Stack Overflow的第一個問題,如果格式不正確,請致歉。Android - 如何製作帶有視圖的複雜選項卡式應用
我正在開發一個相對複雜的選項卡式應用程序,並且在接觸到ActivityGroup和TabActivity不推薦使用的信息之前已經設置了基本知識,並且首選模型是使用視圖。
我沒有使用視圖的麻煩,這是一個關於架構而不是語法的問題(這就是爲什麼我沒有發佈任何代碼)。具體來說,我應該如何去重組應用程序來使用視圖而不是Intent推出的活動。
該應用程序有五個選項卡;兩個擁有一個佈局,沒有問題。其他三個選項卡正在運行一個具有2-5個不同活動的ActivityGroup(即一個運行設置活動的選項卡,其中單擊每個視圖會啓動一個處理該特定設置的新Activity,按下後退按鈕可返回到更廣泛的設置活動/視圖)。如果我將每個Tab都保留爲TabActivity,那麼將這些內部轉換更改爲視圖仍然相當容易,而不是單獨的活動。
主要問題是僅使用視圖,根本沒有TabActivity/Activity組。我所做的絕大多數研究一直在討論是否使用活動或視圖,或關於特定語法。我一直無法清楚地知道如何在整個應用程序中實現向視圖的轉換。
如果我這樣做,是不是現在整個應用程序都在單個活動中運行 - 託管標籤式佈局的活動? (1)如果是真的,如何管理這個?儘管ActivityGroup被棄用,但所有的Android文檔似乎仍然聲稱,對於功能的不同方面,最好使用單獨的活動 - 這是有道理的。 Android開發團隊是否簡單地決定堆棧和設備的成本使TabActivity實現無效?
如果應用程序在單個Activity中運行,爲每個選項卡管理不同視圖(然後在必要時管理不同視圖內),我應該使用一個巨大的onClick方法處理來自任何可點擊視圖的所有點擊,根據哪個視圖處於活動狀態來處理輸入?還是應該以編程方式註冊並取消所有聽衆的註冊?
使用單個活動,所有時間都不會運行任何點擊偵聽器或任何廣播接收器,即使在不必要時也會消耗資源?
使用單個活動,後退按鈕將從其功能的任何位置退出整個應用程序。如果我使用視圖,是否必須一致地重寫onBackPressed()並仔細管理應用行爲以強制它像「Android應用」一樣行爲?
AM我在想這個完全錯誤嗎?我可能無意中嘗試用視圖重新創建ActivityGroup和TabActivity功能,而當我採用完全不同的設計方法來使用製表符和視圖時。
當人們在谷歌說,我們不應該用活動標籤了,和馬克·墨菲先生這樣強調同意,我傾向於相信。我根本無法研究切換方式,而無需手動重新創建大量的活動功能(可能包括各種骯髒的黑客攻擊)。
預先爲任何願意處理這種模糊和被覆蓋的話題的人提升情緒。
真優秀的問題...歡迎來到Stack。 – 2012-02-01 21:23:49