如何显示来自弹出视图控制器的数据

时间:2019-04-10 18:28:00

标签: swift

我正在尝试创建一个提醒应用,并且我有一个带有表视图的视图控制器。当我按下按钮时,将出现一个弹出视图控制器,以输入名称和描述。当我关闭弹出窗口时,在两个文本字段中输入的文本不会显示在表格视图单元格上。打印功能只是检查类别的名称和描述是否附加到所有类别上。

  @IBAction func createPressed(_ sender: Any) {
    allCategories.append(Categories(name: nameTF.text!, description: descriptionTF.text!, activities: []))
    print(allCategories)
    dismiss(animated: true, completion: nil)

}

编辑以下是具有表视图的视图控制器中的代码: 编辑2:我在reloadData()下的viewWillAppear中打印了所有Categories,并打印了正确的内容。我将numberOfRowsInSection中的返回值更改为allCategories.count,现在它在表视图中显示内容,但是每次添加类别/说明时,它都会重复显示第一个类别和说明。另外,它在一个单元格中显示类别的名称,在另一个单元格中显示描述,我只希望它显示名称并将描述作为字幕

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var theTableView: UITableView!

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return allCategories.count
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    //when cell is pressed
}
func numberOfSections(in tableView: UITableView) -> Int {
    return allCategories.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = UITableViewCell(style: UITableViewCell.CellStyle.default, reuseIdentifier: "myCell")
    cell.textLabel!.text = allCategories[indexPath.row].name
    return cell
}


override func viewWillAppear(_ animated: Bool) {
    theTableView.reloadData()
    print(allCategories)
}

0 个答案:

没有答案