@
Sunnyyoung 是这样,IB里面UIScrollView的约束比较奇葩,外部约束用来定位和宽高,内部的约束只能把ScrollView撑开(contentSize),无法影响到ScrollView的frame。
于是我用IB插入一个UIScrollView时候,我会在里面放一个View,设置约束与VC的View等宽,左右与ScrollView贴紧,高度为0,这样会把ScrollView的contentSize宽度上撑到和屏幕等宽。高度用内部的空间撑起来。
然后这个view每次都会自动跑偏,提示我misplaced,留下一串警告。实际上没有问题。
木有遇到其他View跑偏的情况。
感觉现在iOS里面的定位设计得太复杂了,NavBar区分透明和不透明,VC的View定位原点相对屏幕可能是(0,0),(0,20),(0,64),VC还会擅自调整ScrollView的contentInset。加上肾6,肾6+的屏幕尺寸。
目前我写项目Layout已经高度依赖IB了放弃手动了,通过把一些LayoutConstraint Outlet到代码里面来动态调整布局。
不知道有没有更好的解决方案。