什么是使用UIAlertView与UIActivityIndicator的好习惯
我在这里读了很多关于UIAlertView的错误使用以及苹果可能会拒绝UIAlertView过度使用的应用这一事实。什么是使用UIAlertView与UIActivityIndicator的好习惯
在我的应用程序中,我正在写我必须很少通过在线请求更新数据并重新计算内部数据结构。虽然这是有效的,并在第二个线程中运行,但我不希望用户触及GUI和应用程序的当前设置等。因此,我决定使用UIActivityIndicator和UIProgessView显示一个UIAlertView,持续几秒钟,这会在后台自动关闭工作已经完成。
您是否认为这是违反HIG规则的原因?如果是这样,你是否对这种工作流程有良好的实践建议?
干杯, Konran
而不是一个UIAlertView中的,我会用MBProgressHUD。它看起来更好,并有一个内置的活动指标。 Apple在他们的一些应用程序中使用了类似的组件。
我不认为一个alertView应使用从与屏幕的交互停止用户。你可以轻松做的是在你的内容上添加一个“蒙版”。创建一个视图;给背景颜色.5 alpha黑色,并将其添加为您的主视图的子视图。这会使其他一切变暗,并停止用户与其交互。
如果你要阻止用户交互,我认为使用alert视图比在GUI上添加一个黑暗的视图要好得多。警报视图会使背景变暗,并让用户知道正在发生的事情,而不仅仅是让他处于黑暗中。 – filipe 2011-03-10 15:46:16
但是,alertView被设计为在用户阅读它所说的内容后被用户解雇。防止用户解雇alertView听起来不太好。随着黑暗的屏幕;你可以添加任何进度条或其他文本,告诉用户发生了什么,请等待。尽管看起来TomSwift的解决方案无论如何都工作得更好。 – GendoIkari 2011-03-10 15:48:38
是的,好点 – filipe 2011-03-10 15:52:25
我已经在一些应用程序中使用了集成活动指示器的警报视图,并且没有一个应用程序被拒绝进入AppStore。如果您不在警报视图中显示任何按钮,用户甚至不会将其视为警报视图,所以我没有看到任何问题。
这就是很高兴知道 :-) – konran 2011-03-10 18:28:46
谢谢大家!这个解决方案看起来非常好,我会尝试一下:-) – konran 2011-03-10 18:30:20