【发布时间】:2011-03-05 05:18:38
【问题描述】:
我在使用 uialert 视图时遇到了一个奇怪的问题。
我有几个警报是我的 .h 文件中的成员变量
UIAlertView *changepwalert; //change password alert.
UIAlertView *delallalert; //delete selected transactions.
UIAlertView *logout; //logout alert.
UIAlertView *closingbalancealert; //closing balance alert.
UIAlertView *totalreportalert; //total report alert.
UIAlertView *ordercashalert; //order cash alert.
UIAlertView *unlockingalert; //unlocking alert.
UIAlertView *receivecashalert;
在我的 .m 文件中,didDismissWithButtonIndex 委托方法具有以下内容。
if(alertView==unlockingalert && buttonIndex==0)
{
//code
}
else if(alertView==ordercashalert && buttonIndex==0)
{
//code
}
else if(alertView==receivecashalert && buttonIndex==0)
{
//code
}
else if (alertView==logout && buttonIndex == 0)
{
//code
}
else if(alertView==closingbalancealert && buttonIndex==0)
{
//code
}
else if (alertView==changepwalert && buttonIndex==0)
{
//code
}
else if(alertView==delallalert && buttonIndex==0)
{
//code
}
这是我如何初始化 uialertview 的示例
ordercashalert = [[UIAlertView alloc] initWithTitle:nil message:@"Enter Password\n\n\n\n\n\n" delegate:self
cancelButtonTitle:@"Ok" otherButtonTitles:@"Cancel",nil];
logout = [[UIAlertView alloc] initWithTitle:@"Logout" message:@"Are You Sure?" delegate:self cancelButtonTitle:@"YES" otherButtonTitles:@"NO",nil];
[logout show];
[logout release];
当我单击注销按钮时,它会运行委托方法,但它会将警报与 ordercashalert 或 receivecashalert 匹配。我不知道为什么。它实际上应该与注销警报匹配。我正处于交付产品的最后阶段,突然间我遇到了这个错误。谁能帮帮我。
【问题讨论】:
-
把代码放在你初始化它们的地方...
-
@mehta 我已经编辑了我的帖子,我认为我们不能将代码放在我初始化 uialertview 的位置,因为我们不知道用户将单击哪个按钮索引。还有什么想法???
标签: iphone objective-c uialertview