我想在用户按下UIBarButtonItem时实现比例动画。如何检测何时按下tabBar中的tabBarItem?
到目前为止,我的想法是UITabBarControllerDelegate
中可能有一种方法?
我还没有看到这样的问题...
谢谢,这个问题一直困扰着我!
一般的想法是,您需要创建自己的自定义UIView
,然后将其传递到this initialiser。
let customView = MyCustomBarButtonItem()
let barButtonItem = UIBarButtonItem(customView: customView)
关于如何实现自定义视图,以便可以检测到触地得分,您有很多选择。
您可以使用touchesBegan
来检测触地,并使用touchesEnded
来检测条按钮项上的“轻击”。
class MyCustomBarButtonItem: UIView {
// ...
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
// ...
}
override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
// ...
}
}
另一种方法是继承UIButton
的子类,并为.touchDown
/ .touchUpInside
控制事件添加目标/动作对。