0

다른 태그를 사용하여 프로그래밍 방식으로 여러 UIImageViews를 만들고 기본보기의 하위보기로 추가하려고합니다. 내가 여러보기 만들려고 해요 다음프로그래밍 방식으로 여러 UIImageViews 만들기

@property (strong, nonatomic) UIImageView *grassImage; 

:

나는 헤더에 내있는 UIImageView의 속성을 가지고

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]; 
    } 

을하지만 난이 이미지 뷰에 액세스하려고 해요 때 사용 태그, 전 마지막 태그 만 가져오고 있습니다. - 012.

내 질문 - 태그를 사용하여이 뷰에 올바르게 액세스하려면 어떻게해야합니까?

비슷한 질문 :

+3

이것을 사용하려면 속성 선언이 필요하지 않습니다. – Cyrille

+0

_ "태그를 사용하여이 이미지보기에 액세스"_? – Amar

+0

그냥 사용하십시오. UIImageView * imgViewRef = (UIImageView *) [self.view viewWithTag : TAG_NUMBER]; – Rajneesh071

답변

3

당신은 당신이 동일한보기 모든 시간을 다시 때문에 마지막을 얻고있다.

은 다음과 같이 귀하의 의견을 그 변수를 제거하고, 추가하기 :

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 *imgView = [self.view viewWithTag:110]; 
+0

그 말이 맞습니다, 고마워요. 이걸 시도해 봅니다. – ignotusverum

+4

여러 개의 이미지 뷰를 생성하고 있습니다! 대답이 정확하지 않습니다. 구매하면 grassImage의 마지막 이미지 뷰에만 액세스 할 수 있습니다. 여전히 [self.view viewWithTag : 100]을 호출 할 수 있어야합니다. - [self.view viewWithTag : 112]; 모든 사람에게 액세스하십시오! –

+0

맞아요, Nils Ziehn – ignotusverum

0

를 사용하여 특정 tag와 서브 뷰를 얻기 위해이 코드

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

동일한 이미지를 계속해서 다시 만들고 있기 때문에에 액세스하면당신이 만든 마지막 이미지 뷰를 제공합니다. 대신 당신은 이와 같은 이미지 뷰를 얻을 수 있습니다.

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