UIAlertview 不会记录结果

Posted

技术标签:

【中文标题】UIAlertview 不会记录结果【英文标题】:UIAlertview won't log result 【发布时间】:2013-10-02 10:36:12 【问题描述】:

如果用户在我的alertView 上按下 OK,我想记录,但它什么也没做...这是我的检查:

- (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];

有人看到问题了吗?我试图在if buttonIndex 之外做一个NSLog 但这也不会被记录..

谢谢

【问题讨论】:

【参考方案1】:

将您的代理分配为自己,而不是委托为 nil

【讨论】:

【参考方案2】:

使用以下内容:

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

【讨论】:

【参考方案3】:

检查您的委托,您将委托传递给 nil。将它传递给 self 这就是发生这种情况的原因......

喜欢这个

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

【讨论】:

以上是关于UIAlertview 不会记录结果的主要内容,如果未能解决你的问题,请参考以下文章

UIAlert 需要几秒钟才能显示

关于 UIAlert 跳转到一个 xib

将 UIActivityIndi​​catorView 添加到 UIAlertView

在 AFHTTPRequestOperation 失败时显示 UIAlertView

UIAlertView 用 OK 显示信息性语句

从当前模态的委托中呈现 UIAlertView