if (cell == nil) // 1
{ // 2
[[NSBundle mainBundle] loadNibNamed:@"TVCell" owner:self options:nil]; // 3
cell = tvCell; // 4
self.tvCell = nil; // 5
} // 6
Существует некоторый код от примера Apple использования Вашей собственной "пользовательской ячейки XIB" для создания ячеек в UITableView.
Это, кажется, работает..., но я думаю, что добился бы большего успеха для фактического понимания то, что делается там.
Почему следующее не присваивает значение чему-то?
cell = [[NSBundle mainBundle] loadNibNamed:@"TVCell" owner:self options:nil];
(На самом деле, cell
и tvCell
не используются вообще.)
Почему строка № 4 присваивает использование tvCell
когда ничто не было вставлено в него вообще, еще?
Почему, намечают № 5, аннулирующий tvCell
то, что мне нужно?
Почему это использование строки, присваиваются, не сохраняют?
@property (nonatomic, assign) IBOutlet UITableViewCell *tvCell;
О единственной вещи я не могу добраться, работа правильно состоит в том, когда я поместил кнопку раскрытия на свою пользовательскую ячейку XIB. Существует ли способ для меня обнаружить, когда пользователь нажал на него? (Хотелось бы надеяться, не используя 100 с ТЕГОВ.)
Я не играл с XIB для ячеек, но не понимаю, почему вы все еще не можете использовать tableView: accessoryButtonTappedForRowWithIndexPath:
.