2012-01-30 95 views
0

iPhone應用程序,ios 4+。 創建一個包含超過50頁信息的應用程序,我想根據當前總是使用GMT的時間進行更改 - 所以如果在洛杉磯的時間是凌晨5點,並且您訪問該應用程序,我希望它顯示基於時間的信息GMT,不是當地時間。根據時間更改uiNavigationController

我正在考慮從一個數據源(webservice也許?)加載數據,並在左上角和右下角有一個按鈕,以允許用戶來回瀏覽其他信息頁面。

對於這個或者一個uinavigationcontroller來說,正常的uiview是否足以適應來回選項?

此外,存儲50 +頁面信息(主要是文本,一些照片和谷歌地圖coords),這個信息不會改變太多,所以我不知道它應該存儲在本地通過應用程序或加載從網絡進入。人們通常是否避免將信息存儲在應用程序中,或者很好嗎?

回答

1

[NSDate date]總是以GMT格式返回時間(本地時間是NSDateFormatter的函數,而不是日期對象本身),所以基於GMT的功能應該不成問題。如果您需要以GMT顯示日期,請記住在打印日期之前設置NSDateFormatter的區域設置,否則將在當地時間打印。

單視圖方法可能工作,可能在啓用分頁的UIScrollView中,以便用戶可以前後滑動而不必按按鈕? Apple有一個代碼示例,用於構建分頁滾動視圖,在您滾動內容以減少內存時動態加載和卸載內容頁面。我們可以使用UINavigationController,但是請記住,UINavigationController像堆疊的頁面一樣構建,並將底層視圖控制器保存在內存中,這樣如果您在設計時不小心,可能會耗盡大量內存你的視圖控制器(這是一個好主意,有輕量級視圖控制器不保留任何數據本身,這樣,當他們的視圖被卸載時,他們幾乎不佔用任何內存)。

或者,如果您不介意僅針對iOS5,則可以使用iBooks風格的UIPageViewController,它可以讓用戶像瀏覽書籍一樣瀏覽內容頁面。

至於存儲您的數據,聽起來最好的方法是將其嵌入到應用程序中。添加Web連接會增加項目的重大技術複雜性,因此如果內容需要頻繁更改(如此頻繁以至於在內容更改時發佈新的應用商店更新不方便),那纔是值得的。

+0

謝謝,很高興知道UINav控制器的內存方面,我認爲帶有滾動視圖的UIView是最好的選擇。我將在本地存儲細節,謝謝你的回答。 – 2012-01-30 15:28:28