func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
Этот метод используется для генерации или удаления ячеек в соответствии с требованиями tableView.Это не метод члена UITableView.Вместо этого это метод протокола, а другой объект, который будет источником данных, будет реализовывать и возвращать значение.Поэтому он всегда будет возвращать ячейку, независимо от того, проводим ли мы модульное тестирование или отлаживаем приложение.
tableView.cellForRow(at:)
Этот метод не является методом генератора.Это метод-член UITableView в качестве вспомогательного метода, например, для.для получения выбранной строки мы используем tableView.selectedRow.Так что предполагается вернуть ячейку для любого indexPath.
Как мы знаем, UITableView не создает ячейки, равные нарисованным строкам.Предположим, что вы хотите нарисовать 100 строк, тогда UITableView создаст только несколько дополнительных ячеек, кроме видимых ячеек.Поэтому, если вы передадите какой-либо indexPath, которого нет среди видимых строк, то практически эта ячейка не существует.Потому что просмотр таблицы ждет вас, чтобы прокрутить и повторно использовать неиспользуемые ячейки.Поэтому, проводите ли вы модульное тестирование или работаете над приложением, оно всегда будет показывать ноль для ячеек, которые не видны.