我正在做一些自定義繪製我已經分類的UITableViewCell。在那裏有一個需要用戶交互工作的OpenGL ES 2.0控件...現在,如果我開始水平拖動控件響應,但只要我沿着垂直方向移動,它就開始移動表視圖的視口。如何阻止這種交互進入UITableView並將其限制在UITableViewCell中的我自己的UIView中?捕獲和停止用戶交互的iOS傳播iOS UITableViewCell
0
A
回答
1
你可以試試以子類UITableView並覆蓋以下方法
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
// if user tapped on your custom view, disable scroll
self.scrollEnabled = NO;
// end if
[super touchesBegan:touches withEvent:event];
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
self.scrollEnabled = YES;
[super touchesEnded:touches withEvent:event];
}
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event {
self.scrollEnabled = YES;
[super touchesCancelled:touches withEvent:event];
}
1
我不認爲你可以阻止UITableView上的用戶交互,因爲它會影響所有的子視圖。
我會嘗試將UITableView交互發送到您希望它使用它的方法。
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView {
[MyClass myScrollDidStartMethod];
}
或使用 - (空)scrollViewDidScroll:(UIScrollView的*)發送,這樣就可以對發送者的contentOffset工作取得的滾動方向(見this post相關詳細信息)
相關問題
- 1. 如何捕獲Android和iOS上的用戶級互動事件
- 2. UITableView和UICollectionView交互ios?
- 3. 停止視圖中的用戶交互
- 4. 的UITextField停止對用戶交互
- 5. 用戶與ios-charts的交互
- 6. 如何停止對用戶交互
- 7. iOS的用戶數據UITableViewCell
- 8. iOS:交互式UIImageView
- 9. iOS:順序交互
- 10. 停止旋轉youtubevideo播放器ios sdk
- 11. ViewController禁用交互 - iOS
- 12. 禁用窗口交互iOS
- 13. 停止傳播
- 14. 停止傳播
- 15. 停止傳播
- 16. Ios「停止」按鈕對應於「播放」和「暫停」
- 17. 如何捕獲停止傳播的事件
- 18. iOS:停止webViewDidStartLoad
- 19. IOS:停止UIAlert
- 20. iOS didUpdateLocations停止
- 21. IOS:停止的NSTimer
- 22. 在NativeScript中停止事件傳播ios點擊事件
- 23. iOS上的交互式pdf
- 24. stopPropgation是否停止在捕獲階段傳播事件?
- 25. RxJava:有條件地捕獲錯誤並停止傳播
- 26. iOS UIScrollView沒有用戶交互和編程滾動
- 27. 禁用用戶交互的UITableViewCell和UITextField不會調用didSelectRow
- 28. UIViewAnimation阻止用戶交互
- 29. 停止傳播jquery
- 30. Jquery:停止傳播?
謝謝。不需要子類。 –