0

私はすでに多くのUIImageViewsを持っていました..UIImageViewsの配列を作成し、配列のすべての要素を上記のUIImageViewsの1つに割り当てたい..どうすれば目的cでそれを行うことができますか?? 私は次のようにJavaでそれをしました:

JLabel l1=new JLabel();
JLabel l2=new JLabel();
JLabel [] arrayOfLabels = new JLabel[2];
arrayOfLabel[0] = l1;
arrayOfLabel[1] = l2;

私は目的のcで同じことをする必要があります..

4

4 に答える 4

1
UILabel * l1 = [[UILabel alloc] init];
UILabel * l2 = [[UILabel alloc] init];
NSMutableArray * arrayOfLabels = [NSMutableArray arrayWithCapacity:2];
arrayOfLabels[0] = l1;
arrayOfLabels[1] = l2;
于 2013-07-20T22:27:01.030 に答える
1

より明確にするために、Java ステートメントに従って回答させてください。

   //Java:
    JLabel l1=new JLabel();

    //Objective C:
    UIImageView * l1= [[UIImageView alloc] init];


    //Java:
    JLabel l2=new JLabel();

    //Objective C:
    UIImageView * l2 = [[UIImageView alloc] init];


    //Java 
    JLabel [] arrayOfLabels = new JLabel[2]; 

    //Objective C 
    NSMutableArray * imagesArray = [[NSMutableArray alloc] init];

    //Java 
    arrayOfLabel[0] = l1;

    //Objective C 
    [imagesArray addObject:l1];


    //Java
    arrayOfLabel[1] = l2; 

    //Objective C
    [imagesArray addObject:l2];

ARCを使用していないため(コメントから推測しました)、メモリ管理の一部として次のように手動で解放する必要があります。

     [l1 release];  //After adding it to imagesArray

     [l2 release];  //After adding it to imagesArray

imagesArray不要なときはリリースしてください。通常は で行われdealloc()ますが、次のように呼び出すだけで、それ以上必要ない場合はいつでも解放できます。

    [imagesArray release];
    imagesArray = nil;

これがあなたを助けることを願っています。

于 2013-07-20T23:03:05.543 に答える
0
UIImageView *view1;
UIImageView *view2;
// assuming they are already instantiated
NSMutableArray *arrayOfImageViews = [[NSMutableArray alloc] init];
[arrayOfImageViews addObject:view1];
[arrayOfImageViews addObject:view2];
于 2013-07-20T22:25:26.447 に答える
0

あなたが言うことができるより現代的な構文を使用して

NSArray *myViewArray=@[ view1, view2, view3 ];
于 2013-07-20T22:31:59.187 に答える