在pu项目(第一个项目)中目前所学到的小知识
2015-07-14 10:04
459 查看
1.采用自动布局,添加约束时,某些能自适应大小的无需添加宽高约束,如ImageView,它会自动根据里面图片的大小来调整自己的大小,当然如果你需要明确的大小,则是可以添加约束的。
2.UILabel会根据字体的大小和长度来调整自身的大小,所以有时候也不需要添加宽度约束和高度约束。另外UILabel支持换行,我感觉效果比UITextView效果要好,采用UITextView有时候会出现一些莫名其妙的BUG,如将UITextView放在屏幕的最底部,那么UITextView会被隐藏,只有双击底部(模拟器上)才会向上弹出文字,而采用UILabel则不会出现这样的状况,而且UILabel由于自适应大小,所以如果需要换行,添加约束时只需要添加宽度约束即可,高度会自动计算出来,而且换行仅需要一行代码支持,uilabel.numberOfLines
= 0; 即可实现换行。当然修改字体及字体大小不算在里面。
3.在UITabelView中,如果TabelViewCell想要跟当前的ViewController进行数据之间的通信,那么采用协议代理则是最简单的方法,通过协议代理将数据当作参数传递出去。之前我傻乎乎的想利用superview来通过cell找到controller,事实证明这是最不好的方法,因为ios8,ios6通过cell找到controller需要两层superview,而ios7通过cell找到controller需要三层superview,因此你在使用superview之前还要判断用户是使用的什么设备,然后决定写多少层superview,这无疑是愚蠢的行为。
4.利用xib创建自定义cell的一般方法。一般自定义cell时,需要创建一个数据模型,由于利用xib创建的cell大小一般是不能改变的(目前我还没有见到过能改变大小的cell是用xib创建的),所以不需要frame模型,然后自定义cell类继承自UITableViewCell。自定义类持有一个数据模型的属性,然后能将数据模型里的数据设置到cell里的各个控件里面去。在controller中产生cell时则调用设置数据的方法,这样就能展示自定义的cell了。
5.关于如何让cell产生圆角并且两个cell之间产生一定距离的方法。默认的cell是四个角四四方方,铺满整个cell层的,并且同一section之间的cell是紧紧相连的。圆角会给人一种优雅的感觉,cell之间的间隔会给人高大上的印象,那么怎么实现这种效果呢。其实很简单,在cell中添加一个背景层,将背景层设置成自己喜欢的样式,圆角,与cell边缘的间隔,等等。然后将cell层也就是cell最上层的view的alpha值设为0,background
color设置成clear color,即可达到这样的效果。
2.UILabel会根据字体的大小和长度来调整自身的大小,所以有时候也不需要添加宽度约束和高度约束。另外UILabel支持换行,我感觉效果比UITextView效果要好,采用UITextView有时候会出现一些莫名其妙的BUG,如将UITextView放在屏幕的最底部,那么UITextView会被隐藏,只有双击底部(模拟器上)才会向上弹出文字,而采用UILabel则不会出现这样的状况,而且UILabel由于自适应大小,所以如果需要换行,添加约束时只需要添加宽度约束即可,高度会自动计算出来,而且换行仅需要一行代码支持,uilabel.numberOfLines
= 0; 即可实现换行。当然修改字体及字体大小不算在里面。
3.在UITabelView中,如果TabelViewCell想要跟当前的ViewController进行数据之间的通信,那么采用协议代理则是最简单的方法,通过协议代理将数据当作参数传递出去。之前我傻乎乎的想利用superview来通过cell找到controller,事实证明这是最不好的方法,因为ios8,ios6通过cell找到controller需要两层superview,而ios7通过cell找到controller需要三层superview,因此你在使用superview之前还要判断用户是使用的什么设备,然后决定写多少层superview,这无疑是愚蠢的行为。
4.利用xib创建自定义cell的一般方法。一般自定义cell时,需要创建一个数据模型,由于利用xib创建的cell大小一般是不能改变的(目前我还没有见到过能改变大小的cell是用xib创建的),所以不需要frame模型,然后自定义cell类继承自UITableViewCell。自定义类持有一个数据模型的属性,然后能将数据模型里的数据设置到cell里的各个控件里面去。在controller中产生cell时则调用设置数据的方法,这样就能展示自定义的cell了。
5.关于如何让cell产生圆角并且两个cell之间产生一定距离的方法。默认的cell是四个角四四方方,铺满整个cell层的,并且同一section之间的cell是紧紧相连的。圆角会给人一种优雅的感觉,cell之间的间隔会给人高大上的印象,那么怎么实现这种效果呢。其实很简单,在cell中添加一个背景层,将背景层设置成自己喜欢的样式,圆角,与cell边缘的间隔,等等。然后将cell层也就是cell最上层的view的alpha值设为0,background
color设置成clear color,即可达到这样的效果。
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 一天精通asp.net的学习经验小结
- js判断客户端是iOS还是Android等移动终端的方法
- IOS开发环境windows化攻略
- .net平台推送ios消息的实现方法
- 写给想学习Javascript的朋友一点学习经验小结
- 探讨Android与iOS,我们将何去何从?
- Android、iOS和Windows Phone中的推送技术详解
- IOS 改变键盘颜色代码
- Android和IOS的浏览器中检测是否安装某个客户端的方法
- javascript实现阻止iOS APP中的链接打开Safari浏览器
- iOS开发之路--微博OAuth授权_取得用户授权的accessToken
- ios通过按钮点击异步加载图片
- ios中图像进行压缩方法汇总