注意:这是iOS 13 beta,也可以申请明天正式发布。
更新 2:我将其替换为更大的拇指图像,但问题仍然存在。
更新:如果我非常精确地触摸 slider 上的拇指,它看起来仍然可以连续控制。但是为什么会这样,我怎样才能让它像以前一样控制呢?
我的 View 中添加了一个滑动手势识别器:
let swipeRight = UISwipeGestureRecognizer(target: self, action: #selector(self.respondToSwipeGesture))
swipeRight.direction = UISwipeGestureRecognizer.Direction.right
self.view.addGestureRecognizer(swipeRight)
稍后,我将 UISlider 添加到同一 View :
let slider = UISlider()
let sliderLength:CGFloat = 175
slider.frame = CGRect(x:0,
y:CGFloat(customHeight) - 35,
width:sliderLength,
height:35)
slider.minimumValue = -1.2
slider.maximumValue = 0.6
slider.setValue(Float(snowSliderValAdder), animated: false)
slider.addTarget(self, action: #selector(self.updateSnowSliderValue(_:)), for: .valueChanged)
view.addSubview(slider)
以前工作正常的东西,现在在 iOS 13 中表现不佳。如果我非常缓慢地移动 slider ,我可以移动 slider ,但如果我做任何类型的滑动 Action , slider 上的拇指停止移动并且手势被触发。我怎样才能阻止这种情况发生?
最佳答案
我遇到了同样的问题,并通过执行以下操作设法解决了它:
向您的 slider 添加一个不执行任何操作的 panGesture 并将其 cancelsTouchesInView 属性设置为 false。
let panGesture = UIPanGestureRecognizer(target: nil, action:nil)
panGesture.cancelsTouchesInView = false
slider.addGestureRecognizer(panGesture)
现在,您的 slider 应该像刀子一样滑动,不会中断滑动。
关于swift - 滑动手势会中断 iOS 13 中的 UISlider 控件,但不会中断以前的 iOS 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58001780/