1

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

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

根据用户的输入,我想显示另一个 UIAlert 显示基于某些字典查找的正确或错误。

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

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

谢谢托尼。

4

2 回答 2

0

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

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

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

于 2012-07-04T02:23:25.713 回答
0

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

于 2012-07-04T01:40:01.620 回答