Мне кажется, вы сами ответили на свой вопрос: нельзя. Поскольку ячейка не имеет indexPath при выполнении viewDidLoad. И на самом деле, у него нет ни одного позже, потому что та же самая ячейка может быть повторно использована для другого индекса в течение десятой доли секунды, если вы используете удаление ячеек из очереди (хорошее слово!), что вы должны.
РЕДАКТИРОВАТЬ: Хорошо, я думаю, я понимаю, что вы хотите: вы где-то сохраняете indexPath, когда передаете ячейку в tableView. Примечание: если вы этого не сделаете, вы никак не сможете узнать, в каком indexPath находится конкретная ячейка, по крайней мере, если вы делаете все так, как должны.
Итак, что вы можете сделать, так это просто создать все ячейки в вашем методе viewDidLoad, сохранить их в массиве, а затем, когда табличное представление запросит их, просто передать их из этого массива.
Обратите внимание, что это не лучший способ заполнения табличного представления, поскольку он предотвращает повторное использование ячеек. Лучшим способом было бы сохранить содержимое ячеек (обычные UIViews) в массиве и добавить их в качестве дочерних элементов в представление содержимого ячейки перед возвратом ячейки. Это позволило бы повторно использовать ячейки, что имеет решающее значение для хорошей производительности. Если у вас не больше ячеек, чем помещается на экране, вам не нужно беспокоиться об их повторном использовании.
person
Felixyz
schedule
30.03.2010