首页 > 解决方案 > 如何在按下按钮后更新 UI?

问题描述

我有一个由按钮触发的 UIAlert,然后用户在其中输入一个字符串,该字符串被添加到我创建的名为 roomList 的数组中。

当用户按下确定时,如何让数组在我的表格视图的屏幕上更新?目前我只能在再次按下按钮时看到打印的更新。下面的代码

func showAlert() {
    let alert = UIAlertController(title: "Enter New Room", message: "Add your new room below", preferredStyle: UIAlertController.Style.alert)
    alert.addAction(UIAlertAction(title: "Ok", style: UIAlertAction.Style.default) { _ in
        if let room = alert.textFields?.first?.text {
            roomList.append(room)
        }
    })
    alert.addTextField { (textField) in
        textField.placeholder = "Enter Room Name"
    }
    present(alert, animated: true, completion: nil)
    print(roomList)

标签: iosswifttableview

解决方案


在此处重新加载表格,printif语句中添加

if let room = alert.textFields?.first?.text {
    self.roomList.append(room)
    print(self.roomList)
    self.tableView.reloadData()
}

当您单击按钮时执行打印语句,而当您单击警报的确定按钮时执行包含 if 语句的回调


推荐阅读