突出显示操作按钮

警报控制器具有一个属性,用于将重点放在警报控制器中添加的操作上。此属性可用于突出显示特定操作以供用户注意。对于目标 C;

@property(nonatomic, strong) UIAlertAction *preferredAction

已在警报控制器中添加的操作可以分配给此属性。警报控制器将突出显示此操作。

此属性只能与 UIAlertControllerStyleAlert 一起使用

以下示例显示了如何使用它。

UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Cancel edit" message:@"Are you really want to cancel your edit?" preferredStyle:UIAlertControllerStyleAlert];

UIAlertAction *cancel = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleCancel handler:^(UIAlertAction * action) {
    NSLog(@"Cancel");
}];

UIAlertAction *no = [UIAlertAction actionWithTitle:@"NO" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
    NSLog(@"Highlighted button is pressed.");
}];

[alertController addAction:cancel];
[alertController addAction:no];

//add no action to preffered action.
//Note
//the action should already be added to alert controller
alertController.preferredAction = no;

[self presentViewController:alertController animated: YES completion: nil];

与警报控制器优选动作设定 .The NO 按钮被高亮显示。

StackOverflow 文档

警报控制器未设置首选操作。“ 否” 按钮未突出显示。

StackOverflow 文档