Swift导航栏添加按钮

时间:2018-02-10 19:01:18

标签: swift button uinavigationcontroller

我需要创建一个导航栏按钮,添加一个用户输入的数组,而不使用文本字段,也不需要离开视图控制器。这样做的最佳方式是什么?

Screenshot of the view

1 个答案:

答案 0 :(得分:0)

您可以使用UIAlertController创建一个带有文本字段的UIAlertView。

请参阅Apple docs

您可以使用.addTextField功能设置此文本视图。

let alert = UIAlertController(title: "Enter Value", message: "Please enter new value", preferredStyle: .alert)
alert.addTextField({t in  //'t' refers to the UITextField
    t.textColor = .red
});

使用闭包设置文本字段等。然后,您可以通过查询.textFields[UITextField]?)来检索此文本字段:

let ok = UIAlertAction(title: "Ok", style: .default, action: {action in
    let text = alert.textFields?[0].text
}
alert.addAction(ok);

例如。您可以填写其余部分以获取所需的功能,例如错误检查,将值添加到数据库以及刷新表视图。

您还可以在创建.cancel

时添加样式为UIAlertAction的取消按钮

然后通过执行以下操作呈现视图控制器:

self.present(alert, animated: true);