Я озадачен (и вероятный слепой к чему-то невероятно очевидному). У меня есть UITableView, который я хочу сделать ужасно нормальные вещи с, такие как текст дисплея в каждой строке. Чтобы сделать это, я реализовал обычный метод делегата tableView:cellForRowAtIndexPath:
. Это называют как ожидалось. Согласно документам, я, как предполагается, создаю объект UILabel и устанавливаю его как textLabel
свойство на новом UITableCell. Но я отказываю с нераспознанным селектором для setTextLabel:
- компилятор должным образом Предупреждает меня также, что это не там. Устаревший метод setText:
присутствует и хорошо работает (с предупреждением). Я определенно кажусь созданию против этих 3,0 библиотек (я не вкладываю выбор выпадающие из других целей. Таким образом, я озадачен. Что я пропускаю?
Спасибо.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell * cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil] autorelease];
UILabel * label = [[[UILabel alloc] init] autorelease];
[label setText:@"Foo."];
[cell setTextLabel:label]; // BOOM.
return cell;
}
Свойство TextLabel помечено достойно. Вы должны были использовать.
Cell.TextLabel.text = @ "какой текст";