【发布时间】:2012-03-26 13:58:16
【问题描述】:
我创建了一个带有两个按钮的 UIAlertView 实例,并且在我的类(.h)的接口文件中我也设置了委托,但在单击按钮时仍然无法得到任何响应。这是我的代码:
//myClass.h
@interface MainMenu : UIViewController<UIAlertViewDelegate>
-(IBAction)secondAct:(id)sender;
以及实现
-(IBAction)secondAct:(id)sender
alert = [[UIAlertView alloc] initWithTitle:@"Dear User"
message:@"Your Request Will be Sent To Security"
delegate:nil
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK", nil];
[alert show];
[alert autorelease];
}
和委托方法:
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
NSLog(@"UIAlertView delegate works");//this line too isnt displayed
NSString *title=[ alertView buttonTitleAtIndex:buttonIndex ];
if ([title isEqualToString:@"OK"]) {
NSLog(@"OK Pressed");
}//i want to create something like this
} 我完成了上面的所有代码,但仍然无法采取任何行动。无论我单击哪个按钮,它都会解除警报。这段代码有什么问题,任何人都可以帮忙吗? 回答
亲爱的PeterG. 评论将delegete:nil 更改为delegate:self,现在可以使用了。
【问题讨论】:
-
delegate:nil 不起作用...将其更改为 delegate:self
-
我之前确实试过。但它给出了一个错误
-
@PeterG。对不起兄弟,它成功了
-
@PeterG。请看我的编辑。再次感谢
标签: objective-c ipad uialertview ios5.1