使用IBOutletCollectionはこのように、あなたのビューコントローラへの出口コレクションを追加します。
@property (retain, nonatomic) IBOutletCollection(UIButton) NSMutableSet* buttons;
これは一つの出口にすべてのボタンを接続できます。 buttons
プロパティは、すべてのボタンを含むNSMutableSetになります。ボタンのtag
プロパティを使用して、個々のボタンの識別を続けることができます。あなたは、すべてのボタンを反復処理するために、おそらく、各ボタンの画像を設定したい場合に便利です:
for (UIButton *b in self.buttons) {
b.imageView.image = [self imageForTag:b.tag];
}
(あなたが指定したタグのための右の画像を提供する-imageForTag:
方法を提供する必要があり、または見つけることができますタグから画像にマッピングする方法)
もちろん、すべてのボタンのタグ値の範囲を知っていて、すべてのボタンを含むビュー内でタグをユニークにするように気を付ければ-viewWithTag:
を使用して各ボタンを個別に取得することもできます。これはおそらく、前述のコンセントのコレクションと同じように、ボタンのセット全体が既に作成されているのと同じくらい速いわけではありませんが、保守することが少ないことを意味します。
はい、上のスポット!私はちょうどこれを試して、NSLog'ed配列の数、およびボタンを完全に接続...私はこの方法を知っていない唯一のこれは、このボタンの画像を変更するためにこれを使用しています?コード賢明なことは何ですか?ありがとう! –
ボタンのイメージを設定することは、IBOutletCollectionを使用しても、単純に古いIBOutletを使用することと変わりありません。ただし、最初にコレクションから各ボタンを取得する必要があります。私は助けることができる上記の少しのスニペットを追加しました。 – Caleb
ありがとうございました! :D –