IOS scrollView和autolayout的约束问题
想用StoryBoard开发个ipad和iphone通用的APP,有个scrollView滚动显示图片,我自己用autoLayout约束的ScrollView有各种问题,所以请教下大家要怎样去约束scrollView
谢谢大家的帮忙和思路,我现在已经弄得差不多了,现在遇到了一个问题,就是我没有加导航控制器的时候是完全没问题了的
但是加了导航条以后就会出现这样的情况,红色那块是滚动视图的颜色
重新约束也一样会有红色的那块存在,求解
问题解决,加了一句self.automaticallyAdjustsScrollViewInsets = NO;就可以了
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
首先说明以下,对于scrollview的约束不简单,尤其在scrollview里面再放东西,我个人只做过简单的scrollview。
之前在看autolayout的时候遇到很多专门的帖子来叙述scrollview的约束,当时觉得复杂就没有收藏连接...不能转给你了。
1.如果是采用可视化界面的开发(我们用的是xib,storyboard类似),我会在scrollview里放我的控件,然后选择全部的控件,选择“添加建议的约束”(手上暂时没有mac电脑下午补一张截图)。这样的话在大部分情况都是可以完成自适应的。
2.因为有的时候这种自动布局的方式不能很好的适应(也有可能是我约束设置的不好)。这种情况下我会采用纯代码的方式来布局整个scrollview,这样对于scrollview里的内容我可以很好的根据屏幕来适应。
3.题主说到是用scrollview滚动显示图片,如果是多张的话,可以使用uitableview。对于tableview本身,是可以很好的利用autolayout来自适应的。
以上,如果还有什么问题可以留言给我。
秘诀在于在ScrollView上加一个UIView,然后在UIView上添加你想要的内容
然后最关键的地方在于使该UIView的width(如果要左右划动就是height)和Viewcontroller的背景View的width相等。
整过。。。 直接上图
说明:
滚动栏是ScrollView
内容视图是UIView
其他UIImageView
技巧楼上貌似说了 加一个 dummyView。。。 对应的是内容视图
图层关系
父亲、兄弟视图约束
儿子视图约束
超过1屏的图片2约束展示
看了下好像有多余的约束。。自己改下咯
你这是算两个问题吧。。。问题二的原因是 因为加了导航栏。。ScrollView及其子类都有的问题。。
解决方案:
就是你可以打印下scrollView.contentInset.top
以及打印下scrollView.contentInset.bottom;
你就动啥原因了。。。