2013-08-20 60 views
0

我想在水平滾動中實現淡入/淡出,但我無法弄清楚如何訪問我的UIScrollView的子視圖中的按鈕。這就是我想要實現Fade in/out stackoverflow如何訪問子視圖中的按鈕

這是我的代碼...

 Game *game = (Game *)[_schedule.games objectAtIndex:i]; 
     UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(x, 20, 150, 100)]; 
     [button setBackgroundImage:[UIImage imageNamed:game.opponent] forState:UIControlStateNormal]; 
     //[button setTitle:game.opponent forState:UIControlStateNormal]; 
     [_gameScrollList addSubview:button]; 

我怎樣才能觀察者添加到我的按鈕,可以這樣做?

 [self.scrollView addObserver:[self.contentViews objectAtIndex:i] 
          forKeyPath:@"contentOffset" 
          options:NSKeyValueObservingOptionNew 
          context:@selector(updateAlpha:)]; 
+0

讓我看看是否理解正確:你有一個滾動視圖,裏面有按鈕,當你滾動瀏覽它們時你想要這個淡入/淡出動畫?請在你的問題中更清楚 –

回答

1

要訪問此按鈕添加爲子視圖的參考,您可以:

  • 使用此按鈕作爲伊娃,保存備日後參考使用它;

  • 同樣,使用此按鈕作爲屬性;

  • 迭代通過_gameScrollList的子視圖,尋找的UIButton的類的子視圖(不推薦,會工作得很好,只有當它只有一個的UIButton的子視圖)如何實現第二種方法

例。只需要聲明一個屬性:

@property(nonatomic, strong) UIButton *button; 

然後:

Game *game = (Game *)[_schedule.games objectAtIndex:i]; 
    self.button = [[UIButton alloc] initWithFrame:CGRectMake(x, 20, 150, 100)]; 
    [self.button setBackgroundImage:[UIImage imageNamed:game.opponent] forState:UIControlStateNormal]; 
    //[self.button setTitle:game.opponent forState:UIControlStateNormal]; 
    [_gameScrollList addSubview:self.button]; 

所以,以後,當你想要的地方訪問這個按鈕,只需就有關財產

self.button.alpha = 0.5; //example of interation with your button 

如果這是不是你在找什麼,你真的應該編輯你的問題更清楚。

希望它有幫助。

相關問題