亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

iOS UIScrollView和控制器返回手勢沖突解決方法

瀏覽:24日期:2022-09-16 18:47:42

開發中,有部分UI,會將UIScrollView橫向鋪在底層,上面放tableView 或一些視圖左右滾動切換,底層的scrollView會和Nav ViewController原有的返回手勢沖突

iOS UIScrollView和控制器返回手勢沖突解決方法

解決辦法,重寫UIScrollView 的gestureRecognizerShouldBegin,在ScrollView滾動到頭的時候,屏蔽ScrollView的手勢

class GesturesConflictScrollView: UIScrollView { override func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool { back(by: gestureRecognizer) } private final func back(by gestureRecognizer: UIGestureRecognizer) -> Bool {guard gestureRecognizer == panGestureRecognizer else { return true } // point.x < 0 代表左滑即手指從屏幕右向左移動 反之一樣 let point: CGPoint = panGestureRecognizer.translation(in: self) let state: UIGestureRecognizer.State = gestureRecognizer.state let locDistance: CGFloat = UIScreen.main.bounds.size.widthif state == .began || state == .possible { let locationPoint = gestureRecognizer.location(in: self) if point.x > 0 && locationPoint.x < locDistance && contentOffset.x <= 0 {return false } let pageCount = contentSize.width / UIScreen.main.bounds.size.width let criticalPoint = pageCount < 2 ? locDistance : locDistance * (pageCount - 1) if point.x < 0 && contentOffset.x == criticalPoint {return false } } return true }}

到此這篇關于iOS UIScrollView和控制器返回手勢沖突解決方法的文章就介紹到這了,更多相關iOS UIScrollView和控制器手勢沖突內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: IOS
相關文章:
主站蜘蛛池模板: 免费看国产做爰大片 | 首页亚洲国产丝袜长腿综合 | 久久99欧美 | 亚洲三级影视 | 亚洲欧美综合网 | 国产一区二区三区毛片 | 一级成人 理伦片 | 爱婷婷网站在线观看 | 日本69xxxx免费视频 | 国产乱偷国产偷高清 | 久久99精品久久久久久首页 | 日本一级淫片a 免费播放口 | 久久亚 | 日本久久久久亚洲中字幕 | 九九精品在线视频 | 香蕉视频精品 | 成人嘿嘿视频网站在线 | 国产99精品在线观看 | 婷婷在线视频 | 欧美一级黄 | 一级做a爱片特黄在线观看yy | 在线看片成人 | 国产亚洲精品自在线观看 | 亚洲成人国产精品 | 免费中文字幕乱码电影麻豆网 | 精品一本久久中文字幕 | 欧美日韩一区二区在线 | 一区二区视频在线播放 | 精品综合一区二区三区 | 日韩欧美一及在线播放 | 中文字幕国产亚洲 | 国产91av在线 | 国产精品第一页在线 | 国产精品亚洲综合一区 | 成人午夜免费视频免费看 | 欧美成在线播放 | 国产精品天天看 | 亚洲视频在线免费观看 | 中文线码中文高清播放中 | 欧美成人h版整片合集 | 国产精品嫩草影院99av视频 |