Iphone 正确访问UIScrollView中的UIView

Iphone 正确访问UIScrollView中的UIView,iphone,uiview,uiscrollview,Iphone,Uiview,Uiscrollview,我有以下代码: int i=0; for (UIView *view in [self subviews]) { //NSLog(@"index %d - i %d",index,i); if (i==index) { NSLog(@"index %d - i %d",index,i); [view setAlpha:0.3]; [view setUserInteractionEnabled:NO]; } i++; } for (UI

我有以下代码:

int i=0;
for (UIView *view in [self subviews]) {
   //NSLog(@"index %d - i %d",index,i);
   if (i==index) {
      NSLog(@"index %d - i %d",index,i);
      [view setAlpha:0.3];
      [view setUserInteractionEnabled:NO];
   }
   i++;
}
for (UIView *view in [self subviews]) {
    [view setAlpha:0.3];
    [view setUserInteractionEnabled:NO];
}
“索引”是用于选择要修改的视图的变量

问题是,如果我运行以下代码,则什么也不会发生:

int i=0;
for (UIView *view in [self subviews]) {
   //NSLog(@"index %d - i %d",index,i);
   if (i==index) {
      NSLog(@"index %d - i %d",index,i);
      [view setAlpha:0.3];
      [view setUserInteractionEnabled:NO];
   }
   i++;
}
for (UIView *view in [self subviews]) {
    [view setAlpha:0.3];
    [view setUserInteractionEnabled:NO];
}
显然,每个视图都将被修改,但我需要第一个代码:)

想法?

尝试以下代码:-

for (UIView *view in [scrollView subviews]) {
        [view setAlpha:0.3];
        [view setUserInteractionEnabled:NO];
    }
希望它能工作

尝试以下代码:-

for (UIView *view in [scrollView subviews]) {
        [view setAlpha:0.3];
        [view setUserInteractionEnabled:NO];
    }

希望它能工作

设置滚动视图中所有子视图的标签,然后将所选视图的标签传递给索引变量Hope它是一个整数

 for(int i = 1; i <=4; i++){

  UIView *myView =  [UIView......]; // set your view
  myView.tag  = i;
  [your_scrollView addSubview:myView];
}

或者有一种简单的方法可以获取视图[您的\u scrollView With tag:index]

设置滚动视图中所有子视图的标记,然后将所选视图的标记传递给索引变量,希望它是整数

 for(int i = 1; i <=4; i++){

  UIView *myView =  [UIView......]; // set your view
  myView.tag  = i;
  [your_scrollView addSubview:myView];
}

或者有一种简单的方法来获取视图[您的带有标记的滚动视图:索引]

尝试将标记设置为视图,并使用索引检查,比如if(view.tag==index){[view setAlpha:0.3];[view setUserInteractionEnabled:NO];}我甚至认为这不是一个好方法。我建议您使用标记来唯一地标识scrolview中的每个视图,而不是索引,这样您就可以在一行代码
[scrolview viewWithTag:tag]
中找到您的视图,然后对其执行任何操作。标记值实际上可以与索引值相同。我没有设置任何标记,确实设置标记并使用它进行检查,效果很好,谢谢:)尝试将标记设置到视图,并使用索引检查,如(view.tag==index){[view setAlpha:0.3];[view setUserInteractionEnabled:NO];}我甚至认为这不是一个好方法。我建议您使用标记来唯一地标识scrolview中的每个视图,而不是索引,这样您就可以在一行代码
[scrolview viewWithTag:tag]
中找到您的视图,然后对其执行任何操作。标记值实际上可以与索引值相同。我没有设置任何标记,确实设置标记并使用它进行检查,效果非常好,谢谢:)太好了!谢谢回答被检查了!但我不明白为什么,在我的第一段代码中,NSLog写了正确的两个值,但视图保持不变……太棒了,它可以工作了!谢谢回答被检查了!但我不明白为什么,在我的第一段代码中,NSLog写入了正确的两个值,但视图保持不变。。。