在学习swift的过程中,最初的时候使用Storyboard进行开发。之后由于某些原因,转为纯代码的开发。这里记录下snapkit的一些基本使用。
label.snp_makeConstraints { (make) -> Void in
make.top.equalTo(10)
make.left.equalTo(10)
make.bottom.equalTo(-10)
make.right.equalTo(-10)
}
不得不感慨,masonry的孪生兄弟snapkit的确好用。上述代码块表示label相距上下左右各10距离。实际布局中,可能label要与button也具有一个相对的布局。然后就可以这样写。
<span style="white-space:pre"> </span>label.snp_makeConstraints { (make) -> Void in
make.top.equalTo(button.snp_bottom).offset(5)
make.left.equalTo(10)
make.bottom.equalTo(-10)
make.right.equalTo(-10)
}
代码中清晰的表现,label的top位置等于button的bottom下移5个距离,然后左下右与view的距离皆为10个距离。另外对于例如label置于view的x位置的中间,可以写make.centerX.equalTo(self)。 以上是一些简单的用法记录。
实际使用中,我曾碰到一个问题,在使用snpakit会重置其他相关的view。该view中,点击button,下方的红色线条会跟随移动。在点击第二个按钮,出现线条并未移动,第二次点击按钮才进行移动。我更改成frame去写CGRectMake就解决了,猜测是重置导致。回头进一步学习snapkit之后,再更新。