Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UI按钮上的约束问题_Ios_Autolayout - Fatal编程技术网

Ios UI按钮上的约束问题

Ios UI按钮上的约束问题,ios,autolayout,Ios,Autolayout,在使用锚实践编程约束时,我遇到了一个问题,即在使用iPhone8或8Plus模拟器时隐藏了按钮的可见性,如下图所示。这是由于我为按钮设置的当前坐标值。然而,当我切换到iPhone12时,这个按钮就会显示出来。如何设置坐标值,使按钮在iPhone 8或8 plus上的相同位置可见? 您对按键的约束无效。您未能指定垂直位置。您忘了将translatesAutoResizengMaskintoConstraints设置为false。我很惊讶这个按钮竟然出现了 (也可以删去关于按钮press.fram

在使用锚实践编程约束时,我遇到了一个问题,即在使用iPhone8或8Plus模拟器时隐藏了按钮的可见性,如下图所示。这是由于我为按钮设置的当前坐标值。然而,当我切换到iPhone12时,这个按钮就会显示出来。如何设置坐标值,使按钮在iPhone 8或8 plus上的相同位置可见?


您对
按键的约束无效。您未能指定垂直位置。您忘了将
translatesAutoResizengMaskintoConstraints
设置为false。我很惊讶这个按钮竟然出现了


(也可以删去关于
按钮press.frame
。frame和约束是对立的;使用其中一个或另一个。)

如何从程序上改进设置约束?我想我的答案已经回答了。我知道是你做的,我不是指它。我正在努力使用锚,这非常困难。如何改进?这不是编程问题。有许多自动布局教程和书籍,但这不是一个堆栈溢出主题。我相信我已经回答了这个问题。
let iosImageView: UIImageView = {
        let imageview = UIImageView(image: #imageLiteral(resourceName: "icons8-ios-logo-128"))
        imageview.translatesAutoresizingMaskIntoConstraints = false
        return imageview
    }()
    
    let press: UIButton = {
        let buttonPress = UIButton.init(type: .roundedRect)
        buttonPress.setTitle("Tap Me", for: .normal)
        buttonPress.backgroundColor = .black
        buttonPress.frame = CGRect(x: 110, y: 700, width: 200, height: 50)

        return buttonPress
    }()
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
        addSubviews()
        setConstraints()
        // Do any additional setup after loading the view.
    }

    func addSubviews(){
        view.addSubview(iosImageView)
        view.addSubview(press)
    }
    
    func setConstraints(){
        
        NSLayoutConstraint.activate([
            iosImageView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
            iosImageView.topAnchor.constraint(equalTo: view.topAnchor, constant: 200),
            iosImageView.widthAnchor.constraint(equalToConstant:  200),
            iosImageView.heightAnchor.constraint(equalToConstant: 200),
           
            press.centerXAnchor.constraint(equalTo: view.centerXAnchor),
            press.leadingAnchor.constraint(equalTo: view.leadingAnchor),
            press.trailingAnchor.constraint(equalTo: view.trailingAnchor)

        ])
    }