アラートビューを作る
UIAlerViewを作るときに、タイトルや表示する文字、ボタンの文字、ボタンの数などの初期設定を一緒に行って作ります。
Cancelまたその他のボタンが必要がないときはnilを設定します。
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Alert View Title" message:@"This is the message." delegate:self
cancelButtonTitle:@"Cancel" otherButtonTitles:@"Other Button 1", @"Other Button 2", @"Other Button 3", nil];
形式:@"他の選択肢A", @"他の選択肢B", nil
ボタンがない場合:
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Alert View
cancelButtonTitle:nil otherButtonTitles: nil];
OKのボタンだけの場合:
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Alert View
cancelButtonTitle:nil otherButtonTitles: @"OK", nil];
*アラートビューを表示する
[alert show];
アラートビューを解放する
[alert release];
UIAlertViewDelegate
アラートビューを作成するときの引数delegateでselfを指定しておきます。
そのときは、アラートビューでボタンを押下したときの連絡先がself(今プログラムを書いている場所)になります。
そこに、「clickedButtonAtIndex:buttonIndex」メソッドを用意しておくと、「ボタンがタップされたとき」に、
連絡がselfに届くので、このメソッドが呼ばれるようになります。
- (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
if (buttonIndex == 0 ){
NSLog(@"buttonIndex: %i", buttonIndex);
} else {
NSLog(@"buttonIndex: %i", buttonIndex);
}
}
通常は、buttonIndexの値は、0がCancel、1からotherButtonになります。
他のDelegate:
Customizing Behavior
– alertViewShouldEnableFirstOtherButton:
– willPresentAlertView:– didPresentAlertView:
– alertView:willDismissWithButtonIndex:
– alertView:didDismissWithButtonIndex:
Canceling
– alertViewCancel:
使い方:
- (void) alertViewCancel:(UIAlertView *)alertView {
NSLog(@"%@", @"alert view cancel");
}
- (BOOL)alertViewShouldEnableFirstOtherButton:(UIAlertView *)alertView {
return NO;
}
- (void)willPresentAlertView:(UIAlertView *)alertView {
NSLog(@"%@", @"willPresentAlertView");
}
- (void)didPresentAlertView:(UIAlertView *)alertView {
NSLog(@"%@", @"didPresentAlertView");
}
- (void)alertView:(UIAlertView *)alertView willDismissWithButtonIndex:(NSInteger)buttonIndex {
NSLog(@"%@", @"willDismissWithButtonIndex");
}
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
NSLog(@"%@", @"didDismissWithButtonIndex");
}