2012-10-04 14 views
2

假設我有一個ViewGroup可以包含幾個可選的孩子的意見,說VideoView,一個ImageView和一些可選按鈕。我應該隱藏可選視圖還是在運行時添加它們?

是否顯著的資源浪費,如果我包括佈局文件中的所有可能的子觀點,但他們都設置爲visibility默認了,但變化的知名度在運行時是否恰當?

難道只是爲了更好地根據需要添加在運行時的看法?還有另一種更明智的方法嗎?片段?

回答

2

我更喜歡創建它們並隱藏它們。我注意到,我看過的大多數內置Android佈局都是這樣做的。就我個人而言,我認爲它減少了NullPointerExceptions以及避免它們所需的檢查。

+0

您是否記得您可以引用獎勵積分的任何特定內置佈局? :) –

+1

alert_dialog_holo.xml,activity_list.xml,action_bar_home.xml和action_bar_title_item僅舉幾例。如果您在佈局文件夾中搜索'visibility ='gone'',您將獲得其餘部分。 – toadzky

1

是沒有創建的視圖佈局文件屈指可數節省下來的資金通常不會使您的應用程序的運行時資源消耗大的差別,除了他們含有大量圖像或其他非常沉重ressources情況。

在另一方面,具有在佈局文件的視圖(隱藏)

  • 使他們要比在Java代碼中創建它們
  • 導致他們由Android林特被檢查更具可讀性。

這就是爲什麼我總是建議讓他們在佈局。

+0

在我的情況下標記它們的原因是沒有相關的媒體(視頻,圖像,音頻等),所以不會有任何資源附加到它們。感謝列舉靜態編譯時佈局的好處 - 我同意。 –

相關問題