有没有一种方法可以在按下和释放时更改uiview的颜色。
我通过覆盖它使用touchesBegan和touchesEnded尝试了它,但是它影响了现有功能。因此,在不影响现有功能的情况下,我们可以实现它吗?
答案 0 :(得分:2)
您可以使用UIGestureRecognizer
检测视图上的触摸事件。请参考下面的链接以获取更多信息。
https://www.raywenderlich.com/433-uigesturerecognizer-tutorial-getting-started https://developer.apple.com/documentation/uikit/uipangesturerecognizer
示例:
let myView = UIView()
let gesture = UITapGestureRecognizer(target: self, action: #selector(tapEventDetected(gesture:)))
myView.addGestureRecognizer(gesture)
@objc func tapEventDetected(gesture:UITapGestureRecognizer){
if gesture.state == .began{
//Set touch began color
}
if gesture.state = .ended{
//Set touch ended color
}
}
谢谢!