我有一個UITableView
,我想要set bouncing only one side top side.
但我無法解決這個問題。看到這個視頻鏈接,併爲我提供解決方案。任何建議是欣賞和接受。Tableview彈跳只有一面頂端
這裏 https://www.dropbox.com/s/qztsfkqoxuy4aaj/question.mov?dl=0
這是我的tableview信息。
我有一個UITableView
,我想要set bouncing only one side top side.
但我無法解決這個問題。看到這個視頻鏈接,併爲我提供解決方案。任何建議是欣賞和接受。Tableview彈跳只有一面頂端
這裏 https://www.dropbox.com/s/qztsfkqoxuy4aaj/question.mov?dl=0
這是我的tableview信息。
使用方法scrollViewDidScroll
檢查內容的tableview的滾動型的偏移量。檢查用戶是否試圖滾動超出表視圖的底部邊界。如果是這樣,請回滾到tableview的結尾。這不會限制底部反彈,但會很快回滾,以至於用戶不會注意到底部反彈。
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
if (scrollView.contentOffset.y >= scrollView.contentSize.height - scrollView.frame.size.height) {
[scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, scrollView.contentSize.height - scrollView.frame.size.height)];
}
}
/// UPDATE--如果Tableview的內容大小小於它的框架,上面的代碼可能不起作用。 您可以使用以下在這種情況下:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
if(scrollView.contentSize.height > scrollView.frame.size.height)
{
if (scrollView.contentOffset.y >= scrollView.contentSize.height - scrollView.frame.size.height) {
[scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, scrollView.contentSize.height - scrollView.frame.size.height)];
}
}
else if (scrollView.contentOffset.y >= 0)
{
[scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, 0)];
}
}
讓我試試這個。 –
使用此答案,如果您只有表中的一行,該行將位於屏幕底部,並且委託方法被重複調用,因爲tableview試圖將自己滾動回位置 –
謝謝你的工作正常對我來說 –
一個反彈的頂部和底部是標準的iOS行爲 - 防止這種看似「錯誤」的用戶。 –
但我需要這樣的項目流,所以我需要開發這樣的應用程序。 –
@AshleyMills我需要連擊解決方案,我必須設置所有像這樣的tableview,當我只有單行然後也。 –