多数のビューを含む xib ファイルがあります。それらIBOutlet
の はview1
、view2
、などの名前が付けられview3
ており、それらにループでアクセスしたいと考えています。Objective-Cでこれを行うことは可能ですか?
ActionScript では、次のようにオブジェクトの名前を生成できることを知っています ["view"+num]
。
多数のビューを含む xib ファイルがあります。それらIBOutlet
の はview1
、view2
、などの名前が付けられview3
ており、それらにループでアクセスしたいと考えています。Objective-Cでこれを行うことは可能ですか?
ActionScript では、次のようにオブジェクトの名前を生成できることを知っています ["view"+num]
。
それらを IBOutletCollection に入れます。これは配列です。インターフェイス ビルダーに入力して反復処理できます。
名前を付けるのではなく、タグ (0...10) を割り当ててから、 で親ビューから引き出すことができますviewWithTag:
。
キー値コーディングを使用します。たとえば、view1 .. view 10 があるとすると、次のように使用します。
for(int i=0 i< 10; i++){
UIView *eachView = [self valueForKey:[NSString stringWithFormat:@"view%d", i]];
}
うまくいくことを願っています。
これを実現する別の方法は、 を使用することNSDictionaryOfVariableBindings
です。
NSArray *views = [NSDictionaryOfVariableBindings(view1, view2, view3) allObjects];
for (UIView *item in views)
do something with item;