UIAlertView: Where the cancel button should be?
The alert views in iOS system:
- Install App OTA: the c开发者_开发问答ancel button is on the LEFT.
- Delete an App: the cancel button is on the RIGHT.
Where the cancel button should be?
From Human Interface Guideline:
In a two-button alert that proposes a potentially risky action, the button that cancels the action should be on the right (and light-colored).
In a two-button alert that proposes a benign action that people are likely to want, the button that cancels the action should be on the left (and dark-colored).
As per Apple Place buttons where people expect them. In general, buttons people are most likely to tap should be on the right. Cancel buttons should always be on the left. https://developer.apple.com/design/human-interface-guidelines/ios/views/alerts/
If you set the text for the cancel button in the initializer, iOS will take care of this for you.
As the Human Interface Guidelines say:
In a two-button alert that proposes a potentially risky action, the button that cancels the action should be on the right (and light-colored).
Although, in practice, you may be labeling your buttons with something other than the generic label. (I have Yes/No) alerts in many circumstances. As your example from Apple shows, this part of the HIG won't be a deal breaker for your app.
The definition in was slightly updated (no dark-light colored references):
- When the most likely button performs a nondestructive action, it should be on the right in a two-button alert. The button that cancels this action should be on the left.
- When the most likely button performs a destructive action, it should be on the left in a two-button alert. The button that cancels this action should be on the right.
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Message" delegate:nil cancelButtonTitle:@"Cancel" otherButtonTitles:@"Continue"];
The cancel button will be on the left side of the screen in this case which is the default case.
精彩评论