iOS开发Snapkit的使用

2018-06-26  本文已影响114人  lczalh

1.基本使用

        let viewOne = UIView()
        viewOne.snp.makeConstraints { (make) in
            make.left.top.equalToSuperview()
            make.width.height.equalTo(40)
        }
        //当前视图与 title中心相同 (centerX 和 centerY)
        make.center.equalTo(title)
        //当前视图宽高大于等于 title
        make.size.greaterThanOrEqualTo(title)
        //当前视图 的 上下左右(top,left,bottom,right) 等于 title
        make.edges.equalTo(title)
        //当前视图距离title视图上、左、下、右边距分别是20、20、20、30
        make.edges.equalTo(title).inset(UIEdgeInsetsMake(20, 20, 20, 30)) 
        //当前视图为title视图的一半
        make.size.equalTo(title).multipliedBy(0.5)

2.属性

        .equalTo:等于
        .lessThanOrEqualTo:小于等于
        .greaterThanOrEqualTo:大于等于
        .edges::边缘  
        .size:尺寸
        .center:中心
        .inset:内位移修正
        .offset:外位移修正
        .multipliedBy:倍率修正

3.更新、移除、重设约束

        //保存约束的引用
        var constraint:Constraint?
        title.snp.makeConstraints { (make) -> Void in
            self.constraint = make.width.height.equalTo(150).constraint
            make.center.equalTo(self.view)
        }
        
        //移除约束
        self.constraint?.deactivate()
        //1.更新修改约束
        self.constraint?.update(offset: 60)      
        //2.视图约束更新
        override func updateViewConstraints() {
              self.title.snp.updateConstraints{ (make) -> Void in
              //视图宽度与屏幕等宽
                    make.width.equalTo(self.view)
               }
              super.updateViewConstraints()
          }

         //重做约束
          title.snp.remakeConstraints { (make) -> Void in
              make.width.height.equalTo(100)
         }
上一篇下一篇

猜你喜欢

热点阅读