Swift3 运行后将嵌套的stackview动态添加到现有stackview

Swift3 运行后将嵌套的stackview动态添加到现有stackview,swift3,Swift3,斯威夫特新手在这里,试图学习代码。不过我有javascript背景。我使用故事板中的嵌套堆栈视图设计了一个简单的界面: 层次结构是 Vertical Stack -Horizontal Stack -Vertical Stack Label Textfield -Vertical Stack Label TextField 我基本上已经设置了一个类似于表的显示,每次用户单击“添加成员按钮”时,

斯威夫特新手在这里,试图学习代码。不过我有javascript背景。我使用故事板中的嵌套堆栈视图设计了一个简单的界面:

层次结构是

Vertical Stack
   -Horizontal Stack   
      -Vertical Stack
        Label
        Textfield
      -Vertical Stack
        Label
        TextField
我基本上已经设置了一个类似于表的显示,每次用户单击“添加成员按钮”时,我都要复制它所需要的内容,并将其添加到堆栈顶部。添加一个新的水平堆栈,该堆栈由两个垂直堆栈组成,其中包含标签和文本字段

当我按下按钮时,什么也没发生。也没有错误。我用指纹确认按钮事件正在触发

以下是控制器代码:

class createCrewController: UIViewController{
    //MARK: Properties

    var memberList:UIStackView!
    override func viewDidLoad() {
        super.viewDidLoad()
        memberList = view.viewWithTag(1) as! UIStackView!;
        // Do any additional setup after loading the view.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


    var rowArray = [UIStackView]()
    //MARK: Actions
    @IBAction func addMemberBTN(_ sender: UIButton) {
        //Create name and TextField
        let nameLabel = UILabel();
        nameLabel.text = "Name";
        let nameTextField = UITextField();
        nameTextField.placeholder = "Enter Name";
        let phoneLabel = UILabel();
        phoneLabel.text = "Name";
        let phoneTextField = UITextField();
        phoneTextField.placeholder = "Enter Phone";
        //Insert them into vertical Stack
        let nameRow = UIStackView(arrangedSubviews: [nameLabel,nameTextField]);
        nameRow.axis = .vertical;
        let phoneRow = UIStackView(arrangedSubviews: [phoneLabel,phoneTextField]);
        phoneRow.axis = .vertical;
        let columnView = UIStackView(arrangedSubviews:[nameRow,phoneRow]);
        columnView.axis = .horizontal;

        self.memberList.addSubview(columnView);
    }