在哪里处理从UIAlert调用的带有UIText输入的UIAlert代码

时间:2012-07-04 01:27:00

标签: ios xcode nested uialertview popover

我有一个带3个按钮的Popover。

其中一个按钮链接到IBAction方法,该方法使用setAlertViewStyle:UIAletViewStylePlainTextInput显示UIAlert对话框以获取用户输入。

根据用户的输入,我想根据一些字典查找显示另一个显示CORRECT或INCORRECT的UIAlert。

我的挑战是放置第二个UIAlert代码。我试过把它放进alertView:willDismissWithButtonIndex;我也在alertView:clickedButtonAtIndex尝试过。在这两种情况下,虽然显示第二个警报,但在单击“确定”按钮后,将再次显示相同的警报...无限制地。

寻求有关如何避免此循环的建议;最好把这段代码放在哪里?

由于 贝。

2 个答案:

答案 0 :(得分:0)

alertView:clickedButtonAtIndex:将是正确的使用方法。您是否以某种方式区分alertViews,就像使用tag属性一样?您可能正在运行代码buttonIndex,但错误的alertView

答案 1 :(得分:0)

如果您使用的是Popovers,我假设您正在使用iPad进行开发?我建议然后使用UIActionSheet作为初始弹出窗口,而不是手动定义带有3个按钮的弹出框(除非你有一些图形需要这样做)。

使用UIActionSheet,您可以在UIActionSheet中指定委托显示何时显示正确警报视图的逻辑。默认情况下,iPad上的UIActionSheets会显示在Popovers中,这样也应该减少一些视图代码,并使iOS应用程序的体验更加标准化。

如果您绝对必须有多个弹出窗口(这是iOS设计中的一般禁忌),上面提到的Anthony使用tag属性是正确的,然后关闭数字标签。