ios 加载xib遇到的坑
2016-02-05 00:00
453 查看
storyboard,个人觉得是个好玩意儿,但是什么都做到其中总觉得杂乱。个人偏好把复杂的局部控件(比如定制的collectionviewcell)在xib文件中拉好。
在开发过程中遇到不少坑,记忆犹新的是:xib中的部件(比如button)设置圆角的效果不对;加载的xib不能resize大小。
-----------华丽的分割线----------------
在开发过程中遇到不少坑,记忆犹新的是:xib中的部件(比如button)设置圆角的效果不对;加载的xib不能resize大小。
第一个问题:
圆角的设置代码:
1 | view.layer.cornerRadius = view.frame.size.height / 2 ; |
使用了autolayout则需要注意调用的地方:(因为autolayout会重新计算frame,在这里调用子控件的frame才是正确的)
1 | - ( void )viewDidLayoutSubviews; |
好了,如果xib呢?在下面函数中,写你需要达到的子控件的效果。
1 | -layoutSubviews; |
在xib的拥有者调用以下函数,下面函数会出发layoutSubviews
1 | [xib layoutIfNeeded] |
第二个问题:
你设置了xib的大小,但是界面上xib还是顽固的显示它的xib中的大小。肿么办。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | - ( void )awakeFromNib { [ super awakeFromNib]; //solve UICollectionViewCell subviews do not resize self.contentView.autoresizingMask = //UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleWidth | //UIViewAutoresizingFlexibleRightMargin | //UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleHeight //UIViewAutoresizingFlexibleBottomMargin ; self.contentView.translatesAutoresizingMaskIntoConstraints = YES; } |
相关文章推荐
- ios8.0下CLLocationManager定位服务需要授权了
- 用CocoaPods做iOS程序的依赖管理
- Xcode插件管理工具Alcatraz
- ios通过ipa快速提取里面的图片资源
- iOS 技能图谱
- iOS-NSNotificationCenter的应用
- IOS开发新手教程(一)-数据类型和运算符
- ios沙盒的应用
- iOS 发布后的bug跟踪
- iOS之无法隐藏statusbar
- ios关于如何获取手机当前的ip
- iOS开发--系统通讯录的访问与添加联系人
- iOS -- childViewController 的问题
- iOS 最新版 CocoaPods 的安装流程
- iOS CollectionView简单使用
- iOS KVO 实现分析
- 介绍两个ios手机测试的辅助工具
- 关于iOS中图片的平铺
- 【IOS自定义工具类之缓存助手类】CacheHelper
- iOS 9 学习系列: Search APIs