iOS Scrollview中的AutoLayout(纯IB)

来源:互联网 发布:深圳行知小学怎么样 编辑:程序博客网 时间:2024/05/05 17:49

原创Blog,转载请注明出处
blog.csnd.net/hello_hwc
欢迎关注我的iOS SDK专栏
http://blog.csdn.net/column/details/huangwenchen-ios-sdk.html


前言:随着XCode的越来越完善,用IB来创建一些界面是必然的潮流。优点很明显,简单直观,能预览,效率高,好debug,尤其是对一些view中有复杂的控件,比如我今天写的就差不多要有10个textfield,15个label,以及其他的10多个view。如果用代码Autolayout,也能做(用可视化语言会减少一些代码量),估计我头都会炸了,估计以后维护这段超长layout的代码的时候,一定会骂娘了。

对了,还有一点:千万不要认为用纯代码就很高大上,很屌


下面就一步步讲解如何实现

注意,本文不支持屏幕旋转

  1. 新建一个工程,语言随意,因为我们只用IB,为了方便,我们选择,这个Size class,也就是对应所有的Iphone

    然后把size改为400*100,方便我们进行更多的控件布局

  2. 拖拽Scrollview,让其充满屏幕,添加这4个约束即可

  3. 拖拽一个UIView作为ContainView,让这个View来定义Scrollview的ContentSize大小,这里的6个约束一个不能少
    这里定义Scrollview的Contentsize为屏幕的宽度,以及高度1000

到这里,就可以像普通的Auto Layout一样创建了,而且屏幕以下的部门也会响应各种事件
核心的Constraints如下

然后我在添加一些平时正常使用的View和约束,最后的效果如图
,(gif传不上来,穿两张静态图好了)


Demo下载

CSDN下载
http://download.csdn.net/detail/hello_hwc/8903617


2 0