UISlider无法拖动进度条的问题解决
最近业务中的视频播放使用到了UISlider,但是有一个奇怪的问题,就是在Modar
出来的控制器中UISlider是可以正常使用的,但是在Push
出来的控制器,其在最开的屏幕边缘,大概20点值得位置处,怎样都无法拖动进度条,但是一旦进度条走了这段距离是想怎么拖动就怎样拖动,这真的很让人费解。
而且也不存在任何控件的遮挡问题,所以,找了好久一直无解。
后来了解到UISlider是会和手势发生冲突的,但是发现这个UISlider存在的控制器中没有任何手势的,所以问题到了这里似乎无解了。
但是我们要知道,一点在我们iOS开发中有一个全局的右滑返回手势
,所以问题是否出在了这里呢。
我们把Push
出来的控制器的viewDidLoad
方法中加入下面的一句话,在当前的界面禁止掉右滑返回手势
,发现好用了。
self.navigationController.interactivePopGestureRecognizer.enabled = NO;
当然问题这里进行了简化,因为一开始我这里已经交代清楚了两个位置的UISlider不同之处一个Modar
出来的界面,一个Push
出来的界面,这才是问题的关键,不然我开始没有意思到这里的时候,走了一些弯路,所以分析问题一定要找到本质的区别。这样才能定位到问题的关键。