iphone scrollview滾動控制項 UIScrollViewDelegate

來源:互聯網
上載者:User

contentOffset計算內容位移
contentInset表格外面得東西

UIScrollView的滾動,停止(UIScrollViewDelegate)

在使用UIScrollView和它的子類UITableView時,有時需要在不同操作狀態下,做不同的響應。
如何截獲這些狀態,如正在滾動,滾動停止等,使用UIScrollViewDelegate_Protocol。

@interface SampleClass: UITableViewController<UIScrollViewDelegate> {
...
}
...
@end

@implement SampleClass
...
#pragma mark -
#pragma mark UIScrollViewDelegate
// 觸控螢幕幕來滾動畫面還是其他的方法使得畫面滾動,皆觸發該函數


- (void)scrollViewDidScroll:(UIScrollView *)scrollView

 {
    NSLog(@"Scrolling...");
}

// 觸控螢幕幕並拖拽畫面,再鬆開,最後停止時,觸發該函數


- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate 

{
    NSLog(@"scrollViewDidEndDragging  -  End of Scrolling.");
}

// 滾動停止時,觸發該函數
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView 

{
    NSLog(@"scrollViewDidEndDecelerating  -   End of Scrolling.");
}

 
// 調用以下函數,來自動滾動到想要的位置,此過程中設定有動畫效果,停止時,觸發該函數
// UIScrollView的setContentOffset:animated: 
// UIScrollView的scrollRectToVisible:animated:
// UITableView的scrollToRowAtIndexPath:atScrollPosition:animated:
// UITableView的selectRowAtIndexPath:animated:scrollPosition:
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView {
    NSLog(@"scrollViewDidEndScrollingAnimation  -   End of Scrolling.");
}
@end

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.