写在最前面:
noasis-01.gif欢迎大家关注我的个人博客:<a href="http://blog.noasis.cn" >博客地址</a>,这里主要是我在个人开发时候遇到的坑和挖完的坑,包括 PHP CentOS 以及 Swift 等相关只是
说实话我是一个执着于纯代码布局的人,但这有一个前提就是你在使用全代码布局前应该如何使用storyboard布局,这样你才能很好的使用纯代码布局,理解两种不同的布局形式,其实底层做的都是同样的事情。好啦话不多说上效果图
知识点:
- 学会使用Snapkit做纯代码的AutoLayout布局,我之前的文章有讲解过
- 使用纯代码创建自定义的UITableViewCell
- 使用UITableView注册UITableViewCell
- 使用UITableView自适应行高(>= iOS 8.0)
- 常用知识点:整理一下,我经常忘记的知识点
常用知识点
UITableView的一些简单设置:
-
去掉分割线
<code>tableView.separatorStyle = .None</code> -
去掉点击事件
-
UITableView的注册自定义Cell方法
<pre>```Swift
private var postListCellIdentifier = "postList"
//注册纯代码UITableViewCell时
tableView.registerClass(PostList.self, forCellReuseIdentifier: postListCellIdentifier)
//注册基于Xib的UITableViewCell时使用
tableView.registerNib(UINib(nibName: "PostCell", bundle: nil), forCellReuseIdentifier: postListCellIdentifier)
-UITableViewCell自适应高度(iOS8.0新特性)
>UITableViewCell必须给予AutoLayout布局,最后一个UILable一定要给他一个bottom布局属性,否则将没办法自适应高度(坑,勿踩)
<pre>```Swift
tableView.estimatedRowHeight = 450//MARK: 预估高度
tableView.rowHeight = UITableViewAutomaticDimension //MARK: 自适应高度
```</pre>
####clipsToBounds与maskToBounds
>如果你如下操作,如果你不加上
<pre>```Swift
let img = UIImage(named: "us.jpg")
let vImg = UIImageView()
//vImg.layer.masksToBounds = true
//vImg.clipsToBounds = true
vImg.layer.cornerRadius = 50
vImg.image = img
vImg.frame = CGRect(origin: CGPointMake(100, 100), size: CGSizeMake(100, 100))
vImg.contentMode = .ScaleAspectFill
vImg.center = view.center
self.view.addSubview(vImg)
```</pre>
- clipsToBounds:
>子视图在父视图之外的将被截取
- maskToBounds:
>子视图在父视图图层之外的将被截取
网友评论