在 Swift 中以编程方式向 stackView 添加按钮

Now*_*der -1 ios swift uistackview

我尝试在 UIStackView 中以动态/编程方式添加按钮,这些按钮是我用界面构建器构建的,但是当我运行应用程序时它们没有显示出来。应该添加的按钮数量通常为 4-6 个。你们能告诉我代码有什么问题吗

5个按钮 4个按钮 代码

Abd*_*ich 12

@Nowonder 我只是重新创建了您想要实现的目标。以下是步骤。

  1. UIStackView在 viewController 中添加一个fromInterface Builder并添加所需的约束。
  2. 添加以下代码。

    override func viewDidLoad() {
       super.viewDidLoad()
    
       let button = UIButton()
       button.setTitle("btn 1", for: .normal)
       button.backgroundColor = UIColor.red
       button.translatesAutoresizingMaskIntoConstraints = false
    
       let button2 = UIButton()
       button2.setTitle("btn 2", for: .normal)
       button2.backgroundColor = UIColor.gray
       button2.translatesAutoresizingMaskIntoConstraints = false
    
       let button3 = UIButton()
       button3.setTitle("btn 3", for: .normal)
       button3.backgroundColor = UIColor.brown
       button3.translatesAutoresizingMaskIntoConstraints = false
    
       buttonStackView.alignment = .fill
       buttonStackView.distribution = .fillEqually
       buttonStackView.spacing = 8.0
    
       buttonStackView.addArrangedSubview(button)
       buttonStackView.addArrangedSubview(button2)
       buttonStackView.addArrangedSubview(button3)  
    
    }
    
    Run Code Online (Sandbox Code Playgroud)

下面是结果。 在此处输入图片说明

希望能帮助到你。