澳门威利斯人_威利斯人娱乐「手机版」

来自 澳门威利斯人 2020-05-09 00:54 的文章
当前位置: 澳门威利斯人 > 澳门威利斯人 > 正文

【威尼斯人娱乐】通用的点击效果,首页的实现

早上大家已经形成了首页分界面包车型客车布局,有意中人私信问笔者,怎么没在构造时增多button,难道后边大家不点击跳转啊?好啊,这里我们提前做二个职能,往前边涉嫌的Library中增多率先个大家和好的控件->HMTouchView.在Library下新建壹个View文件夹,今后大家只要再有自定义的View就联合置于这几个职位了。拖拽View文件夹进Xcode中Library下:

本节大家来落到实处三个科学普及的应用软件首页效果,富含顶上部分广告Infiniti滚动,成效模块辅导等等,如图所示:

前天我们来做人脉关系及民用大旨三个界面,都很简单,应用程式上截图如下:

威尼斯人娱乐 1QQ20151221-9@2x.png

威尼斯人娱乐 2QQ20151219-1@2x.png因为要展现图片,大家先增添二个相比较出名的图片加载第三方:Kingfisher,和三个对象写的广告轮播:Reindeer,那么些轮播库比较好的少数正是,能够自由的定制图片的加载方法,你能够选拔随机的图片加载第三方居然你能够选用本人写的加载方法:

威尼斯人娱乐 3QQ20151222-1@2x.png威尼斯人娱乐 4QQ二零一六1222-2@2x.png这里大家分别用UITableView和通常性的构造格局来完成。首先是人际关系的寻觅框,和首页的同出一辙。展开Connection.storyboard,在内部增多底下控件构造。(这里能够见见我们的StoryBroad文件都以分其余十足文件,即便是组织开采的话是多少人搭档是不会有其它影响的。)威尼斯人娱乐 5QQ20161222-3@2x.png间隔14,继续增加五个等宽的View,并放入下列控件:威尼斯人娱乐 6QQ20151222-4@2x.png威尼斯人娱乐 7QQ20151222-5@2x.png

创制三个HMTouchView,世襲UIView

banner.setRemoteImageFetche({ (imageView, url, placeHolderImage) -> Void in //这里为图片加载的代码 imageView.kf_setImageWithURL(NSURL(string: url)!, placeholderImage: placeHolderImage)})

上边这么些作用若是用TabViewCell来做的话应该要轻易一些,然近来后我们一时先用普通的布局来落到实处,个人宗旨的地点再上学TabViewCell。

威尼斯人娱乐 8QQ二零一四1221-10@2x.png作者一直上代码了,都有注释:

这里大家到Podfile中增加刚刚谈起的那七个工具:

威尼斯人娱乐 9QQ二零一四1222-6@2x.png拖入三个天灰View,再放3个反革命view,上下间隔留0.5,那样就观望有分水线了,不要再拖贰个Label什么的多五个控件了,大家尽量简化,能躺着就别站着。威尼斯人娱乐 10QQ二零一五1222-7@2x.png四个View分别放控件,这几个很简短:威尼斯人娱乐 11QQ20141222-8@2x.png接下去还会有最终贰个更多少人脉关系,其实际景况势和上边相通的哇,布局好后大家运维看看效果:威尼斯人娱乐 12QQ二零一五1222-9@2x.png看上去依旧郑重其辞的,假如您想给它们增加点击事件,只要求改进成为HMTouchView就能够了,前面新来的对象请看从头领头swift2.1 仿搜材通项目 通用的点击效果。以后大家去行使UITableView实现个人基本的分界面搭建。威尼斯人娱乐 13QQ20151222-10@2x.png删除原本自带的View,拖进二个TableView,将标题改善为个体宗旨,Content改良为Static Cells,Sections设置为5,也正是有5个分支,5块区域,Style设置为Grouped威尼斯人娱乐 14QQ20151222-11@2x.png威尼斯人娱乐 15QQ二〇一四1222-12@2x.png现在大家做第一部分,去掉Header,Rows设置为1,再校正RowHeight为135,大家就足以起来构造了。威尼斯人娱乐 16QQ20151222-13@2x.png威尼斯人娱乐 17QQ二〇一五1222-14@2x.png先纳入头像及三个Label,再下方加入贰个惊人60的View,再将其3等分。威尼斯人娱乐 18QQ20151222-15@2x.png威尼斯人娱乐 19QQ二〇一四1222-16@2x.png随意填充贰个颜色看看效果:威尼斯人娱乐 20QQ二〇一六1222-17@2x.png仍旧OK的,大家把颜色改回Default,放入控件:威尼斯人娱乐 21QQ二〇一六1222-18@2x.png下边包车型客车一些就更简约了,轻便的构造再纠正多个体制,几乎十拿九稳。威尼斯人娱乐 22QQ20141222-19@2x.png上面的布局大家一举写完它,Rows分别是3、2、2:威尼斯人娱乐 23QQ20151222-20@2x.png威尼斯人娱乐 24QQ20151222-21@2x.png

import UIKitclass HMTouchView: UIView { /// 点击回调 private var clickhandler:((id:String?) -> Void)? /// 原本背景色 private var originalColor:UIColor? /** 为View添加点击事件,id即StoryBroad中设置的Restoration ID - parameter handler: 点击后触发的回调 */ func click(handler:((id:String?) -> Void)? ){ originalColor = self.backgroundColor if handler != nil { self.clickhandler = handler //为View添加手势,触发clickAction let tapGesture:UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "clickAction") self.addGestureRecognizer(tapGesture) } } func clickAction(){ //执行一个改变背景的动画,你甚至可以做一个比较酷炫的翻转、旋转、放大缩小等 UIView.animateWithDuration(0.3, delay:0.01, options:UIViewAnimationOptions.TransitionNone, animations: { ()-> Void in //self.layer.setAffineTransform(CGAffineTransformMakeRotation //旋转 //这里我们只做一个普通的变色效果 self.backgroundColor = UIColor(red:227/255.0, green:227/255.0, blue:227/255.0, alpha:1.0) }, completion:{ (finished:Bool) -> Void in UIView.animateWithDuration(0.3, animations:{ ()-> Void in //self.layer.setAffineTransform(CGAffineTransformIdentity) //恢复 //恢复为原本的颜色 self.backgroundColor = self.originalColor //动画结束,执行回调 self.clickhandler?(id:(self.restorationIdentifier)) }) }) } }
source 'https://github.com/CocoaPods/Specs.git'platform :ios, '8.0'use_frameworks!pod 'BaiduMapKit' #百度地图SDK https://github.com/BaiduLBS/BaiduMapKitpod 'Kingfisher' #图片加载 https://github.com/onevcat/Kingfisherpod 'Reindeer' #图片轮播 https://github.com/Evilcome/Reindeer

OK,大家来运营看看效果:

明天我们去Story布Rhodes中拿三个View过来试试效果,就用那几个商圈相互影响吧,咱们要把整块商圈相互作用的区域增加点击事件和效用。

然后cd到当前目录,pod update,这个命令不纯熟的请看小编以前的小说,这里不再赘言了。

威尼斯人娱乐 25QQ20151222-22@2x.png

威尼斯人娱乐 26QQ20151221-11@2x.png

ok,希图干活抓实了,大家去Home.StoryBoard中拖拖控件为首页布局吧。首页放置三个ScrollView,因为有个别荧屏大有的显示器小很有很大可能一屏展现不完,这里我们就须要上下滑动的ScrollView了。归入ScrollView,并加上约束,填充整个荧屏。

还不易的标准,我们连线到VC中,设置一下点击效果,并把个体基本最上部的空当去掉:

今昔大家将它的Class纠正为我们自定义的HMTouchView:

威尼斯人娱乐 27QQ二〇一五1219-2@2x.png大家权且把分界面尺寸调治为600x900,未有实际的坚决守护,只是在结构时方便一些:威尼斯人娱乐 28QQ二零一五1219-3@2x.png再增添一个View放到ScrollView中,设置垂直水平居中,并也填充整个父级。威尼斯人娱乐 29QQ20151219-4@2x.png威尼斯人娱乐 30QQ二〇一五1219-5@2x.png为那个View设置八个背景象,威尼斯人娱乐 31QQ二零一四1219-6@2x.png再放置叁个View,约等于我们要用来放置广告位的轮播View了,中度就用暗中同意的128啊。威尼斯人娱乐 32QQ二〇一六1219-7@2x.png这里我们供给成立ViewController去写代码了。威尼斯人娱乐 33QQ20141219-8@2x.png将SB和VC关联起来威尼斯人娱乐 34QQ贰零壹伍1219-9@2x.png再将高度为128的View连线到VC中,命名称为scrollLayout。威尼斯人娱乐 35QQ20151219-10@2x.png先import Reindeer,再创设多个initBanner的诀窍:

威尼斯人娱乐 36QQ20151222-23@2x.png

威尼斯人娱乐 37QQ二〇一五1221-12@2x.png然后连线到ViewController中,命名称叫circleListLayout:威尼斯人娱乐 38QQ20151221-13@2x.png

 ///广告位 func initBanner(){ let anotherBanner = BannerPageViewController() scrollLayout.addSubview(anotherBanner.view) anotherBanner.interval = 3 //3秒自动切换下一张 anotherBanner.placeholderImage = UIImage(named: "placeholder") //加载完成前显示的图片 anotherBanner.setRemoteImageFetche({ (imageView, url, placeHolderImage) -> Void in //设置任意图片加载方式 imageView.kf_setImageWithURL(NSURL(string: url)!, placeholderImage: placeHolderImage) }) anotherBanner.setBannerTapHandler -> Void in //点击了某一张图片 print anotherBanner.images = [ "http://pic9.nipic.com/20100817/4845745_124224113296_2.jpg", "http://pic26.nipic.com/20121223/11613623_164837493315_2.jpg", "http://pic2.ooopic.com/10/79/67/75b1OOOPIC15.jpg" ] anotherBanner.startRolling() }
class PersonalController: UITableViewController { @IBOutlet weak var layout_collection: HMTouchView! @IBOutlet weak var layout_business: HMTouchView! @IBOutlet weak var layout_active: HMTouchView! override func viewDidLoad() { super.viewDidLoad() //即可去掉顶部间隙 self.tableView.tableHeaderView = UIView(frame:CGRectMake(0, 0, 0, 0.5)) //增加点击效果 HMTouchView.setOnClickHandler([layout_collection,layout_business,layout_active]) {  -> Void in print } }}

本文由澳门威利斯人发布于澳门威利斯人,转载请注明出处:【威尼斯人娱乐】通用的点击效果,首页的实现

关键词: 澳门威利斯人 项目 效果 仿搜材通 首页