2011-03-10 35 views
0

我在這裏讀了很多關於UIAlertView的錯誤使用以及蘋果可能會拒絕UIAlertView過度使用的應用這一事實。什麼是使用UIAlertView與UIActivityIndi​​cator的好習慣

在我的應用程序中,我正在寫我必須很少通過在線請求更新數據並重新計算內部數據結構。雖然這是有效的,並在第二個線程中運行,但我不希望用戶觸及GUI和應用程序的當前設置等。因此,我決定使用UIActivityIndi​​cator和UIProgessView顯示一個UIAlertView,持續幾秒鐘,這會在後臺自動關閉工作已經完成。

您是否認爲這是違反HIG規則的原因?如果是這樣,你是否對這種工作流程有良好的實踐建議?

乾杯, Konran

回答

2

而不是一個UIAlertView中的,我會用MBProgressHUD。它看起來更好,並有一個內置的活動指標。 Apple在他們的一些應用程序中使用了類似的組件。

https://github.com/matej/MBProgressHUD

+0

謝謝大家!這個解決方案看起來非常好,我會嘗試一下:-) – konran 2011-03-10 18:30:20

0

我不認爲一個alertView應使用從與屏幕的交互停止用戶。你可以輕鬆做的是在你的內容上添加一個「蒙版」。創建一個視圖;給背景顏色.5 alpha黑色,並將其添加爲您的主視圖的子視圖。這會使其他一切變暗,並停止用戶與其交互。

+0

如果你要阻止用戶交互,我認爲使用alert視圖比在GUI上添加一個黑暗的視圖要好得多。警報視圖會使背景變暗,並讓用戶知道正在發生的事情,而不僅僅是讓他處於黑暗中。 – filipe 2011-03-10 15:46:16

+0

但是,alertView被設計爲在用戶閱讀它所說的內容後被用戶解僱。防止用戶解僱alertView聽起來不太好。隨着黑暗的屏幕;你可以添加任何進度條或其他文本,告訴用戶發生了什麼,請等待。儘管看起來TomSwift的解決方案無論如何都工作得更好。 – GendoIkari 2011-03-10 15:48:38

+0

是的,好點 – filipe 2011-03-10 15:52:25

0

我已經在一些應用程序中使用了集成活動指示器的警報視圖,並且沒有一個應用程序被拒絕進入AppStore。如果您不在警報視圖中顯示任何按鈕,用戶甚至不會將其視爲警報視圖,所以我沒有看到任何問題。

+0

這就是很高興知道 :-) – konran 2011-03-10 18:28:46