Добавить новые значения в таблицу Swift - PullRequest
1 голос
/ 07 октября 2019

Я создаю приложение, в котором пользователи могут добавлять игроков в список. (Подготовка к игре), но я застрял здесь.

У меня есть текстовое поле, в котором я ввожу имя игрока и нажимаю кнопку, которая добавляет игрока в таблицу. Но каждый раз, когда я добавляю нового игрока, он заменяется следующим. Итак, скажем, я добавляю. один игрок: «Игрок 1», а затем я добавляю другого игрока, оба имени будут «игрок 2».

Я пытался добавить цикл for (который я не полностью понимаю, поскольку он полностью отличается от java, c # и т. Д.), Но я хочу добавить цикл for, который будет проходить по всем индексамсписка массивов, а затем добавьте значение.

    @IBAction func addNewPlayerButtonTapped(_ sender: Any){
    allPlayers.append(txtfield_player.text!)
    tableView.insertRows(at: [IndexPath(row: allPlayers.count-1, section: 0)], with: .automatic)
    txtfield_player.text = ""
    tableView.reloadData()
}

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return allPlayers.count
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "CellOne", for: indexPath) as! HomeTableViewCell

    cell.lbl_playerName.text = allPlayers[0..<allPlayers.count] //I'm getting error here.

    return cell
}

Как это исправить? (Если бы я имел cell.lbl_playerName.text = allPlayers [0], он получит только первый индекс c), но мне нужно что-то подобное. Таким образом, я могу добавить как «я», что означает ВСЕ индексы. Надеюсь, вы понимаете, о чем я.


Я думаю, что мне удалось исправить cell.lbl_playerName.text, но проблема в том, что ВСЕ строки заменяются. Поэтому, если я добавлю еще один, скажем, «игрок 3», все игроки будут «игроком 3» в виде таблицы.

1 Ответ

1 голос
/ 07 октября 2019

Я решил проблему следующим образом:

let row = indexPath.row
cell.lbl_playerName.text = allPlayers[row]

внутри cellForRow

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...