Как правильно установить текст UILabel, который является частью IBOutletCollection

У меня есть серия UILabels, которые являются частью IBOutletCollection

@property (strong, nonatomic) IBOutletCollection(UILabel) NSArray *labelCollection;

Я последовательно установил теги UILabels на 0,1,2,3 ... и отсортировал *labelCollection по номеру тега. Таким образом, объект '0' в массиве IBOutletCollection является UILabel с тегом '0' и т. Д.

Используя следующую функцию, я могу обновить текст UILabel в определенном объекте / теге:

- (void) updateLabelAtTag:(int)objId {
        [[self.labelCollection objectAtIndex:objId] setText:@"my new text"]; 
    }

}

Это работает нормально, однако, когда вы нажимаете на setText: в IDE, Xcode Quick Help жалуется

setText:
@property(nonatomic, copy) NSString *text
iOS (2.0 and later) 
Deprecated: Use the textLabel and detailTextLabel properties instead.
The text of the cell.
UITableViewCell.h

Что касается меня, я не могу понять, как UITableViewCell имеет отношение к этой ситуации. Я, конечно, не могу получить доступ к свойствам textLabel или detailTextLabel.

Вопрос: Я использую устаревшее свойство, или XCode неправильно в этом случае?

1 ответ

Решение

Xcode. Я подозреваю

 [(UILabel *)[self.labelCollection objectAtIndex:objId] setText:@"my new text"]; 

сделает это уйти.

Другие вопросы по тегам