Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 以编程方式创建多个UIImageView_Ios_Iphone_Objective C_Uiimageview_Programmatically Created - Fatal编程技术网

Ios 以编程方式创建多个UIImageView

Ios 以编程方式创建多个UIImageView,ios,iphone,objective-c,uiimageview,programmatically-created,Ios,Iphone,Objective C,Uiimageview,Programmatically Created,我想用不同的标记以编程方式创建多个UIImageView,并将它们添加为主视图的子视图 我在标题中具有UIImageView的属性: @property (strong, nonatomic) UIImageView *grassImage; 然后我尝试创建多个视图: for (int i=0;i<13;i++){ grassImage = [[UIImageView alloc] init]; int randNum = arc4random() %

我想用不同的标记以编程方式创建多个UIImageView,并将它们添加为主视图的子视图

我在标题中具有UIImageView的属性:

@property (strong, nonatomic) UIImageView *grassImage;
然后我尝试创建多个视图:

for (int i=0;i<13;i++){

        grassImage = [[UIImageView alloc] init];

        int randNum = arc4random() % 320; //create random number for x position.

        [grassImage setFrame:CGRectMake(randNum, 200.0, 50.0, 25.0)];
        [grassImage setTag:i+100];
        [grassImage setImage:[UIImage imageNamed:@"grass"]];

        [self.view addSubview:grassImage];
    }

for(int i=0;i您只获得最后一个视图,因为您一直在重新创建同一个视图

去掉该变量,然后像这样添加视图:

for (int i=0;i<13;i++){
    UIImageView *grassImage = [[UIImageView alloc] init];

    int randNum = arc4random() % 320; //create random number for x position.

    [grassImage setFrame:CGRectMake(randNum, 200.0, 50.0, 25.0)];
    [grassImage setTag:i+100];
    [grassImage setImage:[UIImage imageNamed:@"grass"]];

    [self.view addSubview:grassImage];
}

您只能获得最后一个视图,因为您一直在重新创建相同的视图

去掉该变量,然后像这样添加视图:

for (int i=0;i<13;i++){
    UIImageView *grassImage = [[UIImageView alloc] init];

    int randNum = arc4random() % 320; //create random number for x position.

    [grassImage setFrame:CGRectMake(randNum, 200.0, 50.0, 25.0)];
    [grassImage setTag:i+100];
    [grassImage setImage:[UIImage imageNamed:@"grass"]];

    [self.view addSubview:grassImage];
}

您只能获得最后一个视图,因为您一直在重新创建相同的视图

去掉该变量,然后像这样添加视图:

for (int i=0;i<13;i++){
    UIImageView *grassImage = [[UIImageView alloc] init];

    int randNum = arc4random() % 320; //create random number for x position.

    [grassImage setFrame:CGRectMake(randNum, 200.0, 50.0, 25.0)];
    [grassImage setTag:i+100];
    [grassImage setImage:[UIImage imageNamed:@"grass"]];

    [self.view addSubview:grassImage];
}

您只能获得最后一个视图,因为您一直在重新创建相同的视图

去掉该变量,然后像这样添加视图:

for (int i=0;i<13;i++){
    UIImageView *grassImage = [[UIImageView alloc] init];

    int randNum = arc4random() % 320; //create random number for x position.

    [grassImage setFrame:CGRectMake(randNum, 200.0, 50.0, 25.0)];
    [grassImage setTag:i+100];
    [grassImage setImage:[UIImage imageNamed:@"grass"]];

    [self.view addSubview:grassImage];
}

使用此代码获取带有特定
标记的子视图

UIImageView *imgViewRef = (UIImageView *)[self.view viewWithTag:TAG_NUMBER];

使用此代码获取带有特定
标记的子视图

UIImageView *imgViewRef = (UIImageView *)[self.view viewWithTag:TAG_NUMBER];

使用此代码获取带有特定
标记的子视图

UIImageView *imgViewRef = (UIImageView *)[self.view viewWithTag:TAG_NUMBER];

使用此代码获取带有特定
标记的子视图

UIImageView *imgViewRef = (UIImageView *)[self.view viewWithTag:TAG_NUMBER];

由于您一次又一次地重新创建同一图像,如果访问
grassImage
,它将为您提供您创建的最后一个imageview。相反,您可以像这样获得imageview

 for (UIImageView *imgView in self.view.subviews) {
        if ([imgView isKindOfClass:[UIImageView class]]) {
            NSLog(@"imageview with tag %d found", imgView.tag);
        }
    }

由于您一次又一次地重新创建同一图像,如果访问
grassImage
,它将为您提供您创建的最后一个imageview。相反,您可以像这样获得imageview

 for (UIImageView *imgView in self.view.subviews) {
        if ([imgView isKindOfClass:[UIImageView class]]) {
            NSLog(@"imageview with tag %d found", imgView.tag);
        }
    }

由于您一次又一次地重新创建同一图像,如果访问
grassImage
,它将为您提供您创建的最后一个imageview。相反,您可以像这样获得imageview

 for (UIImageView *imgView in self.view.subviews) {
        if ([imgView isKindOfClass:[UIImageView class]]) {
            NSLog(@"imageview with tag %d found", imgView.tag);
        }
    }

由于您一次又一次地重新创建同一图像,如果访问
grassImage
,它将为您提供您创建的最后一个imageview。相反,您可以像这样获得imageview

 for (UIImageView *imgView in self.view.subviews) {
        if ([imgView isKindOfClass:[UIImageView class]]) {
            NSLog(@"imageview with tag %d found", imgView.tag);
        }
    }

您根本不需要属性声明就可以使用它。如何“使用标记访问此图像视图”?只需使用它即可。UIImageView*imgViewRef=(UIImageView*)[self.view viewWithTag:tag\u NUMBER];使用此属性声明根本不需要。如何“使用标记访问此图像视图”?只需使用此.UIImageView*imgViewRef=(UIImageView*)[self.view-withtag:TAG\u NUMBER];使用此选项时根本不需要属性声明。如何“使用TAG访问此图像视图”?只需使用此.UIImageView*imgViewRef=(UIImageView*)[self.view-withtag:TAG\u NUMBER];您根本不需要属性声明就可以使用它。如何“使用标记访问此图像视图”?只需使用它即可。UIImageView*imgViewRef=(UIImageView*)[self.view viewWithTag:tag_NUMBER];您正在创建多个图像视图!答案不正确。您只能访问grassImage中的最后一个图像视图。您仍然可以调用[self.view viewWithTag:100];-[self.view viewWithTag:112];并访问每个图像视图!您正在创建多个图像视图!答案不正确。您只能访问grassImage中的最后一个图像视图。您仍然可以调用[self.view viewWithTag:100];-[self.view viewWithTag:112];并访问每个图像视图!您正在创建多个图像视图!答案不正确。您只能访问grassImage中的最后一个图像视图。您仍然可以调用[self.view viewWithTag:100];-[self.view viewWithTag:112];并访问每个图像视图!您正在创建多个图像视图!答案不正确。您只能访问grassImage中的最后一个图像视图。您应该仍然能够调用[self.view With Tag:100];-[self.view ViewWith Tag:112];并访问每个图像视图!