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

Моя таблица имеет функцию удаления строки, но при добавлении новой строки записываются две метки в одном месте, метка над другой меткой

метка принадлежит удаленной строке идругие метки принадлежат новой метке при добавлении новой строки

public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        var cell  = UITableViewCell()

        tableView.register(newCell.self, forCellReuseIdentifier:"newCell");
        cell =  tableView.dequeueReusableCell(withIdentifier: "newCell", for: indexPath) as! newCell
        cell.textLabel.text= value

        return  cell
    }
}

1 Ответ

0 голосов
/ 10 октября 2019

Прежде всего, зарегистрируйте свою ячейку вне функции cellForRowAt indexPath, предпочтительно там, где вы добавляете свой tableView.

Для этого случая зарегистрируйте его в viewDidLoad

Так что tableView.register(newCell.self, forCellReuseIdentifier:"newCell") входит в viewDidLoad

для функции, попробуйте это:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        var cell =  tableView.dequeueReusableCell(withIdentifier: "newCell", for: indexPath) as! newCell
        cell.textLabel.text= value

        return  cell
    }

Надеюсь, это поможет. Кроме того, предоставьте больше контекста тому, что идет не так, и каково предполагаемое поведение.

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