IBOutletCollection の一部を形成する一連の UILabels があります
@property (strong, nonatomic) IBOutletCollection(UILabel) NSArray *labelCollection;
UILabels のタグを順番に 0,1,2,3 ... に設定し、*labelCollection をタグ番号で並べ替えました。したがって、IBOutletCollection 配列のオブジェクト「0」は、タグ「0」などを持つ UILabel です。
次の関数を使用して、特定の obj/tag で UILabel のテキストを更新できます。
- (void) updateLabelAtTag:(int)objId {
[[self.labelCollection objectAtIndex:objId] setText:@"my new text"];
}
}
これは問題なく動作しますが、setText をクリックすると、IDE で Xcode のクイック ヘルプにエラーが表示されます。
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 がこのインスタンスで間違っているのでしょうか?