【发布时间】:2017-01-21 08:12:14
【问题描述】:
Event Handling Guide for iOS 说“有时您可能希望视图在手势识别器之前接收触摸。”,但我找不到如何做到这一点。
我试过delaysTouchesEnded = false,但没有任何效果。
@IBOutlet weak var myPickerView: UIPickerView!
override func viewDidLoad() {
super.viewDidLoad()
let tapGesture:UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(MyViewController.pickerViewTapped(_:)))
tapGesture.delegate = self
tapGesture.delaysTouchesEnded = false
myPickerView.addGestureRecognizer(tapGesture)
}
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int){
// called by UIPickerView
print("pickerView called!")
}
func pickerViewTapped(_ sender: UITapGestureRecognizer) {
// called by UITapGestureRecognizer
print("pickerViewTapped called!")
}
当我点击 myPickerView 时,控制台会是
pickerViewTapped called!
pickerView called!
但我希望它们以相反的顺序排列。该怎么做?
【问题讨论】:
标签: ios uiview uigesturerecognizer uipickerview uitapgesturerecognizer