今天有個小故事
- 今天看到一篇博客,也想到之前寫的東西,與其有相近之處也是沒有注意和在當時去解決的東西,就是一個scrollerview,上面有很多頁面,滑動到最左側時沒有側拉返回的功能,只有點擊左上角返回按鈕才能返回,這是因為scrollerview吸收了系統的側拉手勢,使手勢不能傳遞下去,這個問題以前我也沒有在意,在看到一篇博客的時候,才想到來優化這個問題.
首先在viewDidLoad中加入這句話.
[self.scrollView.panGestureRecognizer requireGestureRecognizerToFail:self.navigationController.interactivePopGestureRecognizer];
故事還沒有結束
- 加上這句話后是可以在scrollerview上面側拉返回了,但是不管當前頁面是不是最左邊都可以側拉返回,需求是在最左側的時候才可以側拉返回,不是最左側時就正常滑動.在滑動結束的的時候再設置一下.
/** 滑動結束后調用 */
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
if (scrollView.contentOffset.x <= 0) {
//滑動結束后如果scrollview是滑動了最左側的話那么就讓它可以側拉返回
self.navigationController.interactivePopGestureRecognizer.enabled = YES;
}else
{
//否則就不能側拉返回
self.navigationController.interactivePopGestureRecognizer.enabled = NO;
}
}
}
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。