0

ユーザーが [OK] を押した場合にログに記録したいのですが、alertView何もしていません...これは私のチェックです:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
    if (buttonIndex == 0) { NSLog(@"user pressed OK"); }
}

また、それは私の中にあります@interface

@interface FirstViewController : UIViewController<UIWebViewDelegate, UIAlertViewDelegate>

そして、これが私のものalertViewです:

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Oeps..."
                                            message:@"This is just a random message."
                                            delegate:nil
                                            cancelButtonTitle:@"OK"
                                            otherButtonTitles:nil];
[alertView show];

誰かが問題を見ていますか?NSLogの外側を実行しようとしましたif buttonIndexが、それもログに記録されません..

ありがとう

4

3 に答える 3

3

Instead of delegate being nil,assign your delegate as self

于 2013-10-02T10:37:11.233 に答える
2

以下を使用します。

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Oeps..."
                                        message:@"This is just a random message."
                                        delegate:self
                                        cancelButtonTitle:@"OK"
                                        otherButtonTitles:nil];
[alertView show];
于 2013-10-02T10:40:46.610 に答える
1

デリゲートをnilに渡したデリゲートを確認してください。それを自分自身に渡します。それがこれが起こっている理由です...

このような

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Oeps..."
                                            message:@"This is just a random message."
                                            delegate:self
                                            cancelButtonTitle:@"OK"
                                            otherButtonTitles:nil];
[alertView show];
于 2013-10-02T10:45:06.187 に答える