0

多数のビューを含む xib ファイルがあります。それらIBOutletの はview1view2、などの名前が付けられview3ており、それらにループでアクセスしたいと考えています。Objective-Cでこれを行うことは可能ですか?

ActionScript では、次のようにオブジェクトの名前を生成できることを知っています ["view"+num]

4

4 に答える 4

3

それらを IBOutletCollection に入れます。これは配列です。インターフェイス ビルダーに入力して反復処理できます。

于 2012-10-28T18:48:46.453 に答える
2

名前を付けるのではなく、タグ (0...10) を割り当ててから、 で親ビューから引き出すことができますviewWithTag:

于 2012-10-28T18:32:57.870 に答える
1

キー値コーディングを使用します。たとえば、view1 .. view 10 があるとすると、次のように使用します。

for(int i=0 i< 10; i++){
  UIView *eachView = [self valueForKey:[NSString stringWithFormat:@"view%d", i]];
}

うまくいくことを願っています。

于 2012-10-28T18:22:06.647 に答える
0

これを実現する別の方法は、 を使用することNSDictionaryOfVariableBindingsです。

NSArray *views = [NSDictionaryOfVariableBindings(view1, view2, view3) allObjects];
for (UIView *item in views)
    do something with item;
于 2012-12-28T02:11:56.237 に答える