0

我更新了Xcode 8SnapKit 3.0来测试自动布局。layoutIfNeeded在我更新到SnapKit 3.0之前,我可以在通话后得到正确的帧。但是我现在在SnapKit 3.0frame.origin.x下得到了.y两个负值。

示例

        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
4

1 回答 1

0

您需要调用layoutIfNeededview不是signUpView因为它是需要进行布局传递的容器。

于 2016-09-19T09:55:29.460 回答