我正在覆盖pressesBegan
以接收选择的印刷机。当焦点在UIButton
上时,Siri 遥控器的菜单按钮不会退出我的应用程序。如果没有 UI 元素聚焦,则菜单按钮按预期工作。
当焦点在UIButton
上时,如何接收菜单按钮按下?
override func pressesBegan(presses: Set<UIPress>, withEvent event: UIPressesEvent?) {
for item in presses {
if item.type == .Select {
print("Click")
}
if item.type == .Menu {
print("Menu Button")
super.pressesBegan(presses, withEvent: event)
}
}
}
UIButton
仅响应遥控器上的.Select
按钮。您可以使用点击手势识别器捕获菜单按钮。例如:
let tapRecognizer = UITapGestureRecognizer(target: self, action: #selector(ClassName.menuPressed()))
tapRecognizer.allowedPressTypes = [NSNumber(integer: UIPressType.Menu.rawValue)];
view.addGestureRecognizer(tapRecognizer)
然后实现:
func menuPressed() {
// do something
}