如何在等待UIAlertView响应时暂停代码执行?
问题描述:
我有UIAlertView,我需要根据用户的响应决定运行哪个代码(取决于用户按下YES/NO的按钮)我已经找到了一些解决方案,但它们都不适用于我:如何在等待UIAlertView响应时暂停代码执行?
为了把代码的其余部分在
-(void)alertView : (UIAlertView *)alertView clickedButtonAtIndex : (NSInteger)buttonIndex
功能,但事情是,所以我需要在原有的功能,这使得代码我的警报并没有在每次执行的,但只有在特定情况下运行这个解决方案对我来说不可能
要使用的标志(点击)这表明该按钮被按下,并使用下面的代码行:
while (!clicked) [[NSRunLoop currentRunLoop] runUntilDate:[NSDate distantFuture]];
但是当我使用它,我不能压在UIAlert的按钮,我的意思是,它不会回应。 然后我发现有一点不同的解决方案,有人声称,它的作品对他来说,原来的代码是C#,但在OBJ-C这将是:
while (!clicked) [[NSRunLoop currentRunLoop] runUntilDate:[[NSDate date] dateByAddingTimeInterval:0.5]];
但在这种情况下,我也得到同样的响应问题。
请帮我做一个解决方案工作或建议另一个。
谢谢
亚历
答
alertview的第一种情况代表的是最简单的方法
if(showalert==true)//there will be a case to show alert or not
{
show alert implement rest of code in delegate
}
else
{
write the rest of code here, if alertview is not called it will execute
}
谢谢你,但它不够好适合我,因为这段代码中我必须做一些变量是原始函数的私有变量,我不想让它们成为全局变量。 – 2013-05-08 15:01:16