Почему у моего UITableViewCell нет свойства textLabel? - PullRequest
8 голосов
/ 25 января 2010

Я в тупике (и, вероятно, слеп к чему-то невероятно очевидному). У меня есть 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;
}

Ответы [ 2 ]

20 голосов
/ 25 января 2010

Свойство textLabel помечено только для чтения. Вы должны были использовать.

cell.textLabel.text = @ "некоторый текст";

0 голосов
/ 09 августа 2011

Вы можете использовать cell.textlabel.text = [NSString StringWithFormat: @ "% d", yourint];

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...