Files
AHAlertView/README.md
2012-09-18 19:42:17 -05:00

55 lines
2.3 KiB
Markdown

# AHAlertView
## Overview
`AHAlertView` is a powerful, block-based alternative to UIKit's `UIAlertView`. It has the following attractive features:
1. Block-based button events - no more messy delegate code
2. `UIAppearance` conformance to allow easy skinning of all elements
3. Dramatic presentation and dismissal animations (tumble, fade, zoom, etc.)
## Usage Examples
Showing an alert is as simple as creating an alert, adding a button, and calling `show`:
AHAlertView *alert = [[AHAlertView alloc] initWithTitle:@"Hello, World!" message:@"I'm an alert view!"];
[alert setCancelButtonTitle:@"Dismiss" block:nil];
[alert show];
If a total of two buttons are added, the alert view will lay them out side-by-side:
![Two button side-by-side layout example](https://dl.dropbox.com/u/13103695/Screenshots/AHAlertView-TwoButtons.png)
AHAlertView *alert = [[AHAlertView alloc] initWithTitle:@"Enter Password" message:@"This is a message that might prompt you to do something."];
[alert setCancelButtonTitle:@"Cancel" block:nil];
[alert addButtonWithTitle:@"OK" block:nil];
[alert show];
You can use an alert view to prompt for user input, including secure text for password fields, etc.:
![Secure text entry example](https://dl.dropbox.com/u/13103695/Screenshots/AHAlertView-SecureTextInput.png)
AHAlertView *alert = [[AHAlertView alloc] initWithTitle:@"Enter Password" message:@"user@example.com"];
alert.alertViewStyle = AHAlertViewStyleSecureTextInput;
[alert setCancelButtonTitle:@"Cancel" block:^{
NSLog(@"User canceled the alert instead of entering their password.");
}];
[alert addButtonWithTitle:@"OK" block:^{
NSLog(@"User entered the password: %@", [alert textFieldAtIndex:0].text);
}];
[alert show];
You can use the block you pass in with the button title to perform any action, including setting a custom dismissal animation based on which button was touched:
![Custom theme and animation example](https://dl.dropbox.com/u/13103695/Screenshots/AHAlertView-Tumble.gif)
[alert setCancelButtonTitle:@"Cancel" block:^{
alert.dismissalStyle = AHAlertViewDismissalStyleTumble;
}];
## TODO
- I think we can all agree a little more documentation would be nice.
- Indeterminate progress style, possibly a determinate one as well.
- Better button layout code