2016-09-18 46 views
0

我更新Xcode 8SnapKit 3.0测试自动布局。在我更新至SnapKit 3.0之前,我可以调用layoutIfNeeded后得到正确的帧。但我得到frame.origin.x.y两个负值现在SnapKit 3.0Snapkit 3.0无法获得正确的帧后呼叫layoutIfNeeded

例如

 let signUpView = UIView() 
     view.addSubview(signUpView) 
     signUpView.snp.makeConstraints { (make) -> Void in 
      make.leading.equalTo(50) 
      make.trailing.equalTo(-50) 
      make.top.equalTo(topView.snp.bottom) 
      make.height.equalTo(50) 
     } 
     // here frame is: {0,0,0,0} 
     signUpView.layoutIfNeeded() 

     // here frame is: 
      (-137.5, -25.0, 275.0, 50.0) 
      ▿ origin : (-137.5, -25.0) 
       - x : -137.5 
       - y : -25.0 
      ▿ size : (275.0, 50.0) 
       - width : 275.0 
       - height : 50.0 

回答

0

你需要调用view,而不是signUpViewlayoutIfNeeded因为这是需要做的布局传递容器。