2012-01-06 82 views
1

我有一個UIScrollView的問題。我想用導航控制器調用視圖。我的代碼有一個方法來檢測輕敲手勢,從而隱藏或顯示導航欄和工具欄。UIScrollView禁用所有其他用戶交互?

我也有一種方法,當用戶按下一個按鈕時,顯示一個UIAlertView。這些工作很好,當滾動視圖隱藏(我評論了代碼),但是當我添加視圖,手勢識別和UIAlertView似乎不工作?然而,導航欄上的按鈕確實有效...

有關如何啓用它們的任何想法?以下是我的代碼來調用ScrollView:

scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width,  self.view.frame.size.height)]; 
    scroll.pagingEnabled = YES; 
    NSInteger viewCount = 15; 
    for (int i = 0; i < viewCount; i++) { 
     CGFloat yOrigin = i * self.view.frame.size.width; 
     UIImageView *filterViewOverlay = [[UIImageView alloc] initWithFrame:CGRectMake(yOrigin, 0, self.view.frame.size.width, self.view.frame.size.height)]; 
     [filterViewOverlay setImage:[filterManager objectAtIndex:i]]; 
     [scroll addSubview:filterViewOverlay]; 
     [filterViewOverlay release]; 
    } 
    scroll.contentSize = CGSizeMake(self.view.frame.size.width * viewCount, self.view.frame.size.height); 
    [self.view addSubview:scroll]; 
    [scroll release]; 

提前歡呼!

勞倫斯

回答

0

確保滾動型是所有其他IBOutlets的背後,並啓用了一定的用戶交互。

+0

你會如何將scrollView放在導航欄後面?不是導航欄鏈接到scrollView加載的nab控制器?另外,在按下按鈕後(它工作),在scrollView之後調用警告視圖,但仍然不顯示,因此scrollView(我假設)已經在後面。至於IBOutlets,沒有,因爲它們全都實用編碼到導航欄/工具欄 – 2012-01-06 01:40:17

0

注意滾動視圖的delaysContentTouches屬性。默認值爲YES,這意味着滾動視圖不會轉發觸摸事件,直到它確定觸摸是否爲其識別的手勢的一部分,例如滾動或縮放。

+1

我使用了代碼scroll.delaysContentTouches = NO;但仍然沒有用。我正在嘗試僅使用一次水龍頭作爲手勢。 – 2012-01-06 15:08:43

相關問題