Sea*_*ean 8 iphone methods delegates uialertview
我遇到了UIAlertViewDelegate方法- (void)alertViewCancel:(UIAlertView*)alertView在我用取消按钮取消AlertView时没有被调用的问题.
奇怪的是委托方法- (void)alertView:(UIAlertView*)alertView clickedButtonAtIndex:(NSInteger)buttonIndex工作正常.
有没有人有想法?
在此先感谢
肖恩
- (void)alertViewCancel:(UIAlertView *)alertView
{
if(![self aBooleanMethod])
{
exit(0);
}
}
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
//some code
}
Run Code Online (Sandbox Code Playgroud)
单击一个按钮时我会调用它:
- (void)ImagePickDone
{
UIAlertView *alertDone = [[UIAlertView alloc]
initWithTitle:@"Done"
message:@"Are u sure?"
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles: @"Yes", nil];
[alertDone show];
[alertDone release];
}
Run Code Online (Sandbox Code Playgroud)
phe*_*cks 12
alertViewCancel用于系统解除警报视图时,而不是用户按下"取消"按钮时.从苹果文档引用:
(可选)您可以实施alertViewCancel:方法,以便在系统取消警报视图时执行相应的操作.如果委托未实现此方法,则默认行为是模拟用户单击取消按钮并关闭视图.
如果要在用户按下"取消"按钮时捕获,则应使用clickedButtonAtIndex方法并检查索引是否与取消按钮的索引相对应.要获得此索引,请使用:
index = alertDone.cancelButtonIndex;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6743 次 |
| 最近记录: |