-1

Appleの仕様によると、IBオブジェクトはStoryboard/Xibを使用して定義されます。一部のプロジェクトでは、これによりUILabel、UIButtonなどの長いリストが定義される場合があります。これらはIBOutletを使用してコードに接続する必要があります。

例:

@property (nonatomic, retain) IBOutlet UILabel *label1;
@property (nonatomic, retain) IBOutlet UILabel *label2;
...
@property (nonatomic, retain) IBOutlet UILabel *label998;
@property (nonatomic, retain) IBOutlet UILabel *label999;

ソースコードでUILabel(またはUIBUttonやUIImageなど)を識別し、それを使用してオブジェクトのコンテンツ/プロパティを変更する方法はありますか?

擬似コードの例:

for (i=0;i<100;i++) {
        <label i>.text = @"...";
}

上記のコードでは、すべてのラベルに文字列値を割り当てたいと思います。これはどのように行うことができますか?ラベルを識別する方法。

4

1 に答える 1

2

Interface BuilderでUILabelのタグを設定し、後でタグを使用してUILabelを識別できます。たとえば、1000個のラベルに1001から2000のタグを設定し、後でこのコードを使用して実行時にラベルを取得できます:-

for (NSInteger iTag= 1001; iTag<2001; iTag++) 
{
    UILabel *lblTest = (UILabel *)[self.view viewWithTag:iTag];
    lblTest.text = @"....";
}

このようにして、最初のラベルにはタグ1001が付けられ、最後のラベルにはタグ2000が付けられ、これらのラベルを関数またはループで使用できます。

于 2012-11-19T08:13:03.330 に答える