我有一个控制器,可以在其中以编程方式添加子视图。通过子视图的配置,我以编程方式添加了自动布局约束。一切正常,除了如果我添加约束并且即使不显示设置的背景色,视图对触摸也不起作用。

buttonView应该显示在父视图的右下角。

任何想法可能有什么问题吗?

这是我添加约束的方法:

 private func configureAutolayoutConstraints(buttonView: UIView, parentView: UIView){

        buttonView.translatesAutoresizingMaskIntoConstraints = false

        let bottomConstraint = NSLayoutConstraint(item: buttonView, attribute:
            .Bottom, relatedBy: .Equal, toItem: parentView, attribute: .Bottom, multiplier: 1.0, constant: -130)

        parentView.addConstraint(bottomConstraint)


        let trailingConstraint = NSLayoutConstraint(item: buttonView, attribute:
            .Trailing, relatedBy: .Equal, toItem: parentView, attribute: .Trailing, multiplier: 1.0, constant: -90)
        parentView.addConstraint(trailingConstraint)

    }

最佳答案

自动版图引擎至少需要4个约束才能确定视野。您仅应用了底部约束和尾部约束。您需要width+heightleading+top约束使其起作用。

关于ios - 程序化自动布局更改UIView的行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35335343/

10-14 20:02