snapkit 编译不过,解决

之前用过masonary,现在想用下swift版本 snapkit

git链接:https://github.com/SnapKit/SnapKit.git 。

下载后运行不了,有一些错误。

我的xcode版本是7.2,应该是够的。

我所做的事情:

1、下载了工程,编译不过

2、参考了 http://www.hangge.com/blog/cache/detail_1097.html。这个思路是将snapkit整个工程导入,然后添加snapkit的编译框架。

3、还有这个 http://www.cnblogs.com/zeyang/p/4491731.html  先编译下载的snapkit成框架,然后在工程中导入编译好的snapkit.framework.这个思路清晰些。可是我cmd+b,压根就编译不出来啊。。。。

 ______________

续:问题解决,xcode从7.2升级到7.3.1,下载的snapkit工程能编译成snapkit.framework。有点坑,snapkit上也没有说清楚这个事情

snapkit使用实践:

http://www.hangge.com/blog/cache/detail_1097.html 写的非常好,非常细致

(一)编译

 

(二)优秀实践,设置一个代码模板

 

(三)愉快的实践,代码如下

class ViewController: UIViewController {

 

    lazy var box = UIView()

    lazy var boxdown = UIView()

    lazy var boxIn = UIView()

    override func viewDidLoad() {

        super.viewDidLoad()

        box.backgroundColor = UIColor.greenColor()

        self.view.addSubview(box)

        

        boxdown.backgroundColor = UIColor.yellowColor()

        self.view.addSubview(boxdown)

        

        boxIn.backgroundColor = UIColor.redColor()

        boxdown.addSubview(boxIn)

        

        box.snp_makeConstraints { (make) in

            make.width.equalTo(100)

            make.height.equalTo(100)

            make.center.equalTo(self.view)

        }

     

//       正下方

        boxdown.snp_makeConstraints { (make) in

            make.width.equalTo(200)

            make.height.equalTo(200)

            make.centerX.equalTo(box)

//            注意,这边的snp_bottom 是对象,需要使用偏移

            make.top.equalTo(box.snp_bottom).offset(10)

            

        }

 

        //嵌套

        boxIn.snp_makeConstraints { (make) in

            //            右下角

//            make.height.width.equalTo(100)

//            make.right.equalTo(0)

//            make.bottom.equalTo(0)

            

//          中间,4个方向的偏移

//            make.edges.equalTo(boxdown).inset(UIEdgeInsetsMake(10, 10, 10, 10))

            

//           缩放

            make.center.equalTo(boxdown)

//            make.size.equalTo(boxdown).multipliedBy(0.2)

            

//           横向加100,纵向-100

            make.size.equalTo(boxdown).offset(CGSizeMake(100, -100))

            

        }

    }

posted @ 2016-06-29 18:12  知吾猪  阅读(1023)  评论(0编辑  收藏  举报