2011-08-13 76 views
0

我是iOS開發新手。任何人都可以給我一個工作示例項目/基於分頁的scrollview教程?當用戶向下滾動時,我需要從web服務中的表格視圖中加載更多數據。 我花了很多時間,但找不到適合我需要的任何東西。任何幫助將不勝感激。需要示例代碼來實現基於分頁的UIScrollView

我能弄清楚我的問題的解決方案。現在我正在嘗試根據y偏移差異檢測上下滾動。問題是,即使它向上,它總是讀取拖拽向下。這是我正在試圖檢測滾動方向:

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate 
{ 
    CGPoint scrollOffSet = scrollView.contentOffset; 
    NSLog(@"Current Content offset: , y = %f", scrollOffSet.y); 
    NSLog(@"Previous offset , y = %f", self.previousYOffset); 

    if(scrollOffSet.y > self.previousYOffset) 
    { 
     self.previousYOffset = scrollOffSet.y; 
     NSLog(@"Scrolled Down"); 
     self.nextPageNumber++; 
     //Here I send the request to fetch data for next page number 
    } 
    else { 
     NSLog(@"Scrolled up"); 
     self.previousYOffset = scrollOffSet.y; 
    } 

} 


- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView 
{ 

    CGPoint scrollOffSet = scrollView.contentOffset; 
    NSLog(@"Current Content offset: y = %f", scrollOffSet.y); 
} 

的問題是:要麼我向上或向下滾動,它總是會顯示「向下滾動」,因而它去獲取下一頁數數據甚至如果它不打算要求。另外,上/下滾動返回的y偏移位置也很混亂。請指導我如何準確檢測上卷軸?

回答

0

你的意思是「swipble」UIScrollView

尋呼UIScrollView很容易。首先確保你的pagingEnabled屬性設置爲YESUIScrollView將使用它自己的框架作爲頁面的大小(如視口)。

使用contentSize屬性來確定scrollable area

例子:

//scrollView is a UIScrollView instance 
int pageCount = 3; 
scrollView.pagingEnabled = YES; 
scrollView.contentSize = CGSizeMake(scrollView.frame.width*pageCount, scrollView.frame.height); 
+0

我想在一個UITableView讀取滾動事件,不是真正可滑動展示。我獲取數據以在一個頁面上顯示。然後,當用戶向下滾動時,必須通過API調用獲取下一組數據(包含8條記錄的頁面)。 到目前爲止我所做的就是這樣。 – salman

+0

首先,請注意,我沒有在與viewcontroller相關聯的nib文件上使用任何UIScrollView控件。 我想用我的UIViewController實現UIScrollViewDelegate。 – salman

+0

- (void)scrollViewDidScroll :(UIScrollView *)scrollView {/}這裏我發送「異步」調用來獲取下一頁的數據。 //增加頁碼 } – salman