2013-07-07 62 views
-3

我是Android編程的總新手,並且正在嘗試創建一個包含公共交通時間表的程序。在Android中創建具有多種不同屏幕的UI

我一直在試圖創建許多按鈕(城市,公交車號碼等),每個按鈕導致一個新的屏幕。我目前知道如何創建這些類型的屏幕的唯一方法是爲每個屏幕創建一個新的活動,並且我確定爲Android創建UI的時間更少。

任何人都可以建議如何創建新的屏幕,而無需創建許多活動?

+1

使用意圖附加項時,您可以在啓動活動時傳遞參數(例如城市名稱)以便重複使用。參見[如何通過傳遞一些參數來啓動一個Intent?](http://stackoverflow.com/questions/2405120/how-to-start-an-intent-by-passing-some-parameters-to-it) – user113215

+1

雖然最初看起來很辛苦,但片段/動作欄/標籤方法是一個很好的總體指導。 – IanB

+0

你在另一個屏幕上顯示的是什麼樣的數據? –

回答

1

一種方法是使用活動和其他來使用片段......使用片段對於初學者來說有點複雜......我不認爲有一種實現你想要的更簡單的方法。

1

如果他們確實代表不同的事情,那麼做這麼多活動並不壞。如果單個活動通過選項等方式表示不同的東西,最終會更加麻煩。

0

這取決於「創建新屏幕」的含義。您目前是否正在執行「爲#29路線創建一項活動以及爲#20路線創建另一項活動」。在這種情況下,通過意圖傳遞參數絕對是減少您正在進行的活動數量的一種方法。

但是,如果您要爲用戶輸入創建一個活動,爲城市列表創建一個活動,併爲公交路線創建另一個活動,那麼恐怕創建活動是實現此目的的唯一方法之一。你可以創建單獨的頁面作爲碎片,但這並不能真正解決你的問題,因爲那時你只需要一堆碎片而不是一堆Activites。

想想這樣:如果你的應用程序是一個網站,每個活動將是一個新的類型的網頁,用戶會去。在某個時候,你的舊網頁沒有你需要的功能,所以你需要創建一個新的功能。同樣,在Android中,如果您想添加新功能,您將不得不添加新的活動/片段來完成工作。正如其他人提到的,有一點需要注意的是,如果你可以將任何功能分解到操作欄中,但是如果你剛剛開始使用(它看起來就是你),我會等待直到你有更多的經驗管理活動和佈局,然後再進入兔子洞。