0

どちらが速いですか?

@interface ViewController : UIViewController
{

UIView *myView;

}

@end

@implementation ViewController

 - (void)myInit(){

UIView *view = [[UIView alloc]init];

myView = view;

view.tag = 1;

}

- (void)viewDidLoad(){
[self myInit];

[self.view addSubview:myView];//accessing by variable

//OR

[self.view addSubView:[self.view viewWithTag:1];//accessing by tag

}

@end
4

2 に答える 2

3

直接ポインタにアクセスできるものと、メソッドを呼び出す必要があるものがあります。次に、インデックス付きオブジェクトを見つけてそれを返し、同じオブジェクトを取得します。あなたの答えがあると思います

于 2012-10-26T08:42:31.353 に答える
0

viewWithTag要素がプログラムでセルにフックされている場合 (つまり、NIB で定義されておらず、IBOutlets を介してフックされている場合)、" " を使用して要素を取得すると便利です。これにより、セルのインスタンスごとに複数のラベルなどが作成されるのを防ぐことができます。 NIBS の変数および/または IBOUtlet には、これまで以上に優れたメリットがあります。これは、 を介してビューをフェッチする場合viewWithTag、コンパイラがforそのサブビュー内でループを実行し、指定されたタグで見つかった最初のビューをフェッチするためです。同じタグを持つ 2 つのビューをviewWithTag常に使用すると、大きな欠点があります。

于 2012-10-26T09:14:53.860 に答える