我是iOS開發新手,有點迷路。我的問題是關於一般用戶體驗和具體體系結構建議。如何在需要首次加載屏幕時組織控制器和視圖
基本上我的應用程序應該工作如下:
在第一次啓動它從遠程服務器請求信息,要求用戶位置與GPS。當這些事情發生時,應用程序應該顯示某種帶有進度指示器和文本的首次啓動視圖。第一個問題是:如果用戶無法從遠程服務器下載信息會怎麼樣?這些信息非常重要,沒有它,應用程序就無法繼續工作。我應該只是重試下載?我應該向用戶展示一些MessageBox嗎?在桌面應用程序中,我將向用戶提供兩種選擇 - 重試或退出。在iOS應用程序中退出是不可接受的,所以我應該提供消息框?或者我只需要通過此首次啓動視圖上的文本通知用戶有關問題,並靜靜地重試以下載信息,直至成功爲止?或者創建按鈕「重試」,並讓用戶這樣做?
如果設備提供的用戶位置和下載成功,我需要繼續所有信息。否則用戶必須在繼續之前選擇他的國家和城市。
然後,我有3個標籤具有不同的功能。我已經實現了。
所以我的問題是:如何顯示首次加載視圖和它的控制器?我應該檢查appdelegate初始化方法並將首次加載視圖指定爲主視圖,然後重新分配給常用應用程序UITabbarController(不知道該怎麼做)?或者我需要設置UITabbarController作爲根控制器,並在第一個標籤控制器初始化我應該檢查它是否是第一次啓動,並調用像presentViewController初次視圖控制器?我想在其他地方實現這個檢查,appdelegate是很好的地方,因爲初始化代碼並不屬於第一個標籤控制器。
我創建了具有多個視圖的示例程序,這些視圖由UITabbarController或UINavigationController管理,但我不明白如何自己管理多個視圖,而無需使用幫助控制器。