ОБНОВЛЕНИЕ: Я решил это сейчас - см. Мой собственный комментарий. Удивительно, как часто выписывание проблемы может привести к разрешению, когда вы пройдете ее снова!
Я, должно быть, прочитал каждую ветку по SO и примерам по Apple, но я просто не могу заставить это работать в моем случае, и мне интересно, что я делаю неправильно?
Я создал пользовательскую ячейку в IB с XCode 4. Для владельца файла задан класс настраиваемого контроллера представления для таблицы, и у меня есть IBOutlet для ячейки UITableView, который подключен OK, что я могу сказать , Я обычно делаю все свои ячейки таблицы с помощью кода и использую метод быстрой прокрутки, но для этого проекта мне действительно нужно использовать перья для загрузки содержимого ячейки, и у меня возникло горе, которое я не могу понять.
Итак, в моем файле интерфейса у меня есть;
@interface myCustomTableViewController <various delegates> {
UITableViewCell *customNibCell;
...
}
@property (nonatomic,assign) IBOutlet UITableViewCell *customNibCell;
В customTableViewController я делаю это в моем cellForRowAtIndexPath;
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@:"customDirCell"];
if (cell == nil) {
[[NSBundle mainBundle] loadNibNamed:@"DirectoryCellWithMenu" owner:self options: nil];
cell = customNibCell;
self.customNibCell = nil;
}
[self configureCell:cell atRow:indexPath.row];
И мой метод configureCell делает это, чтобы проникнуть в ячейку и извлечь то, что я хочу настроить.
UIImageView *fileImageView = (UIImageView *)[cell viewWithTag:3];
UILabel *headingTextLabel = (UILabel *)[cell viewWithTag:4];
UILabel *modifiedTextLabel = (UILabel *)[cell viewWithTag:5];
UILabel *sizeTextLabel = (UILabel *)[cell viewWithTag:6];
Проблема
Ячейки действительно загружаются в таблицу, насколько я вижу правильное расположение. Кроме того, все пользовательские действия, которые я определила для различных кнопок, запускаются нормально, поэтому кажется, что ячейка подключена правильно.
НО ни одна из настроек не работает - я не могу изменить текст какой-либо из меток, например и при расследовании, результат каждого [cell viewWithTag: nn] равен nil , что явно указывает на проблему, но я не могу понять, в чем причина.
- Идентификатор для
UITableViewCell установлен в
"customDirCell"
- Идентификационные данные объекта для меток
и т.д. действительно 3,4,5,6 согласно
IB
- XIB содержит ровно 1 объект,
UITableViewCell
Я не вижу ничего плохого ни в создании файла nib, ни в коде, но я явно что-то упускаю!
Может ли какая-нибудь добрая душа пролить свет на то, куда я должен смотреть?