Как отобразить данные из всплывающего контроллера - PullRequest
0 голосов
/ 10 апреля 2019

Я пытаюсь создать приложение для напоминаний, и у меня есть контроллер представления с представлением таблицы.Когда я нажимаю кнопку, появляется всплывающее окно для ввода имени и описания.Когда я закрываю всплывающее окно, текст, введенный в два текстовых поля, не отображается в ячейке моего табличного представления.Функция печати состояла только в том, чтобы проверить, было ли добавлено имя и описание категории ко всем категориям, что и было.

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

}

отредактируйте вот код в контроллере представления, который имеет табличное представление: Edit # 2: Я распечатал все категории в viewWillAppear под reloadData (), и он печатает правильную вещь.Я изменил возвращаемое значение в 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)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...