iOS开发之xib或storyboard上给UIScrollView添加子控件约束报错的问题
来源:互联网 发布:华普永明知乎 编辑:程序博客网 时间:2024/04/28 15:25
当我们在xib或者storyboard中添加UIScrollView并像给其他控件设置约束一样设置好约束后(例如top,leading,tralling,bottom都为0),显示一切正常,如图:
但是一旦当我们添加控件后就开始报错(即便设置好约束),如图:
此时,以前没碰见过这种问题的同学开始怀疑人生,心理不禁问道”我明明都设置好了约束呀,这些约束设置的没问题呀,我在其他的view上都是这样添加约束呀,怎么会出问题呢?”.
其实这也不怪第一次给UIScrollView设置约束的你,只能说UIScrollView确实跟其他UIView及其子类不同,在设置约束的时候除了常规的一些约束设置完后,还有最重要的一点要让你的scrollView知道自己的宽和高,也就是contentSize.
大家用代码添加scrollView的时候都知道要设置contentSize,同理在xib或者storyboard里添加scrollView时也需要设置好它的contentSize
而当我们在xib或者storyboard给scrollView添加子控件后,scrollView要根据子控件来计算它的contentSize,如果此时我们只设置了子控件的宽高和水平方向竖直方向居中(如上图),scrollView是无法根据子控件的约束来计算出自己的contentSize的,但是我们把子控件上下左右的距离约束也添加上的话,scrollView就能够根据子控件计算出自己contentSize了,此时约束就不会报错了,如下图:
知道了报错的原因,那我们也就知道怎么去解决了,在这里我建议两个思路:
- 思路一: 当我们添加好scrollView后,可以再添加一个clearColor的UIView,直接覆盖在scrollView上,并设置好UIView的约束,之后再往UIView上拖子控件,而这些子控件你就可以按照常规方法来添加并设置约束了.
- 思路二: 直接在scrollView上拖子控件,但切记一定要让scrollView能够根据子控件的约束计算出contentSize.否则还会出现约束报错的情况.
0 0
- iOS开发之xib或storyboard上给UIScrollView添加子控件约束报错的问题
- 在storyboard/xib中如何往UIScrollView里的子视图添加约束?
- iOS UIScrollView内部子控件添加约束的注意点
- IOS开发UI基础:UIScrollView内部子控件添加约束的注意点
- 添加xib 子控件约束
- iOS开发:XIB之AutoLayout添加约束
- XIB文件上UIScrollView的约束
- XIB文件上UIScrollView的约束
- UIScrollView添加子控件约束的一些小总结
- 30. UIScrollView内部子控件添加约束的注意点
- xib或者storyboard中给scrollview添加约束
- iOS XCode storyboard 设置控件三等分屏幕的约束添加
- 在storyBoard中添加UIScrollView并添加相应的约束
- iOS 开发中问题 ——使用xib拖拽控件操作其约束并添加动画没有效果的问题
- iOS开发经验--UIScrollview 添加到控制器里向下偏移 storyboard中创建的 子视图 中 添加的子视图 会遮挡父类之间的视图
- 报错处理-storyBoard或xib连线问题
- iOS之UIScrollview添加约束图文详解
- iOS之UIScrollview添加约束图文详解
- 关于Scala重写Java可变长参数方法
- 分支限界法与回溯法的区别
- Leetcode 150:Evaluate Reverse Polish Notation(计算逆波兰表达式) --java实现
- 系统出现0x80004005错误代码快速解决方法
- HDU 5248 序列变换(二分)
- iOS开发之xib或storyboard上给UIScrollView添加子控件约束报错的问题
- poj 2484 博弈(模仿对手)
- 无等待地从邮箱中得到一个消息, OSMboxAccept()
- 出现( linker command failed with exit code 1)错误总结
- UE——从零开始
- socket /套接字
- android 应用组件[通用 Intent---显示地图上的位置] 十四
- 套路学习:模块化编程+简单工厂模式
- JSP自定义标签开发+TLD文件元素详解