zoukankan      html  css  js  c++  java
  • 自动布局

    (一)系统原生态:NSLayOutconstrants:基本语法就是哪个控件的谁基于那个控件的谁的距离是多少。比较难用,太长了。

    (二)VFL:可视化语言,也比较难用,原生态。

    (三)Autoresizing:只能以父类作为参照,设置autoReszingMask属性,想要使用这个,还必须关闭autoLayOut,感觉也很难用。

    (四)Autolayout:可以用任何控件做约束。通过约束帮我们计算控制的frame。所以用这个一般不要自己在计算frame了。

      在SB中约束会有提示: 黄色:控件frame和约束不符合。  红色:约束冲突,或者缺少必要的约束。

    (五)SnipKit:在Swift中的不二之选,炒鸡好用。

     view.addSubview(textView)
            textView.snp_makeConstraints { (make) in
                
                make.edges.equalTo(self.view)
            }
            
            view.addSubview(composeTabBar)
            composeTabBar.snp_makeConstraints { (make) in
                
                make.bottom.leading.trailing.equalTo(self.view)
                make.height.equalTo(40)
            }
            
            textView.addSubview(pictureView)
            pictureView.snp_makeConstraints { (make) in
                
                // 距离上面100,先固定宽高
                make.top.equalTo(100)
                make.size.equalTo(CGSizeMake(SCREENW - 20, SCREENW - 20))
                make.leading.equalTo(10)
                
            }
    

     (六)Masonry:OC中的不二之选,炒鸡好用。和snp用法一样,为啥呢。。同一群人做的吧。。

     (七)AutoLayOut动画:因为自动布局时候一般不要修改frame了,所以修改的都是约束。constraint。但是修改后是无法改变的,这时候应该先修改约束,再在动画里面调用self.view layoutIfNeed来强行改变全部布局。

     (八)SB创建后有个Use Size Classes属性,这个只是对屏幕进行分类,点击后就会出现九宫格,可以选择甚至是pad的尺寸。

  • 相关阅读:
    python 单下划线/双下划线使用总结
    error connection reset by peer 104
    变形课
    求并联电阻值
    HDU2054:A == B ?
    Do the Untwist
    开门人和关门人
    关于HEXO安装失败的解决方法
    代码高亮显示——google-code-prettify
    网站图标——favicon
  • 原文地址:https://www.cnblogs.com/sgxx/p/5828386.html
Copyright © 2011-2022 走看看