UIAlertView の却下イベントを処理しようとしています。ただし、 didDismissWithButtonIndex が呼び出されることはありません。以下は、アラートを生成するシングルトン クラスのコードです。誰かが私が間違ったことを見つけることができますか?
MySingleton.h
@interface BMAppUser : NSObject <UIAlertViewDelegate> {
}
+ (id)sharedInstance;
MySingleton.m
+ (id) sharedInstance {
static BMAppUser *sharedInstance = nil;
@synchronized(self) {
if (sharedInstance==nil) {
sharedInstance = [[super allocWithZone:NULL] init];
}
}
return sharedInstance;
}
-(void)promptToSetLanguagePreferences {
// Create a new alert object and set initial values.
NSString *message = [NSString stringWithFormat:@"Please set your language preference settings. Click OK to go there now."];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Language Preferences Not Set"
message:message
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];
// Display the alert to the user
[alert show];
}
-(void)alertView:(UIAlertView *)didDismissWithButtonIndex:(NSInteger)buttonIndex {
NSLog(@"THIS METHOD NEVER GETS CALLED!!!!!!!");
if(buttonIndex==0){
NSLog(@"userclickedCancel");
}
if(buttonIndex==1){
NSLog(@"userclickedOK");
}
}