IOS-笔记11(StoryBoard自动布局)
2015-08-21 16:33
260 查看
AutoLayout
经验比较重要,如果你设置完不是你想要的样子试试到各控件的标尺选项卡里删掉那些奇奇怪怪的数字,还有hugging和Compression Resistance来设置那些控件优先被拉伸或压缩
如果你需要在代码里添加对控件的约束是可以的,首先你需要定义这样一个变量:
这是约束的变量类型,所有控件的约束都可以由这个变量来完成。
接下来使用这个函数来设置约束:
也可以移除:
Size Class
对于不同的设备,有regular size和compact size,在StoryBoard的底部有选项,针对不同的Size可以做不同的布局。
在特定的Size下布局时,最好先清除你需要改动的部件之前的约束。之后做的所有约束只和现在选择的Size Class有关, 在特定的Size Class下布局同样可以添加只在这个Size下才有的控件。在这个控件的Attributes Inspector的最底部有相应的选项。这个选项同样可以用于对所有约束的操作。
经验比较重要,如果你设置完不是你想要的样子试试到各控件的标尺选项卡里删掉那些奇奇怪怪的数字,还有hugging和Compression Resistance来设置那些控件优先被拉伸或压缩
如果你需要在代码里添加对控件的约束是可以的,首先你需要定义这样一个变量:
var aspect: NSLayoutConstraint?
这是约束的变量类型,所有控件的约束都可以由这个变量来完成。
接下来使用这个函数来设置约束:
aspect = NSLayoutConstraint( item: constrainedView,//目标View attribute: .Width,//目标属性 relatedBy: .Equal,//目标属性与参考值的关系 toItem: constrainedView,//参考View attribute: .Height,//参考属性 multiplier: newImage.aspectRatio,//乘的倍数 constant: 0)//加的常量最后将约束加到根View上:
view.addConstraint(newConstraint)
也可以移除:
view.removeConstraint(existingConstraint)
Size Class
对于不同的设备,有regular size和compact size,在StoryBoard的底部有选项,针对不同的Size可以做不同的布局。
在特定的Size下布局时,最好先清除你需要改动的部件之前的约束。之后做的所有约束只和现在选择的Size Class有关, 在特定的Size Class下布局同样可以添加只在这个Size下才有的控件。在这个控件的Attributes Inspector的最底部有相应的选项。这个选项同样可以用于对所有约束的操作。
相关文章推荐
- iOS开发日记8-MD5加密
- iOS设计模式--责任链模式
- 播放视频的方法
- 苹果IOS开发者账号总结
- 相册的实现
- ios蓝牙打开判断
- 图片翻转效果的实现
- iOS-Animation学习2-CABasicAnimation以及CAAnimationGroup的基本用法
- OC基础13:数字、字符串和集合2
- iOS POP到指定的界面的方法
- ios新技术文章转载链接汇总
- iOS开发中一些实用小代码
- IOS项目之AFNetworking中文乱码问题
- 如何在iphon IOS设备上使用二维码
- [IOS]CoreAnimation基础[翻译3部分]
- IOS比较常用的第三方及实例(不断更新中)
- iOS小问题——关于使用IQKeyBoardManager第三方的坑
- 快速掌握iOS API的一个小技巧
- IOS笔记061之二维码的生成和扫描
- iOS 制作圆形头像