有人知道如何通过单击tvOS上的"菜单"按钮来启用UIAlertViewController吗?
Apple TV 4上的"设置"应用程序具有这种行为,但在我的应用程序中默认情况下不起作用。我使用以下代码创建用户可以执行的操作,但希望允许他不选择任何内容,然后按遥控器上的"菜单"按钮返回。
UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"Alert"
message:@"Please make a choice"
preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction* action1 = [UIAlertAction actionWithTitle:@"Option 1" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {}];
[alert addAction:action1];
UIAlertAction* action2 = [UIAlertAction actionWithTitle:@"Option 2" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {}];
[alert addAction:action2];
[self presentViewController:alert animated:YES completion:nil];
提前谢谢。
@ion:你的回答让我找到了正确的答案。
您确实需要添加一个样式为UIAlertActionStyleCancel的操作,以使菜单按钮按预期工作,并退出UIAlertViewController。要将此取消操作从选项中隐藏(没有按钮,如设置应用程序中的按钮),只需将其标题和处理程序设置为nil:
[alert addAction:[UIAlertAction actionWithTitle:nil style:UIAlertActionStyleCancel handler:nil]];
必须在UIAlertActionStyleCancel样式的控制器中至少有一个UIAlertAction,菜单按钮才能按预期工作。
在Swift中:
alertController.addAction(UIAlertAction(title: nil, style: .cancel, handler: nil))