2013-11-03 43 views
0

我有一個類Cell,它延伸到LinearLayout。在通過構造函數創建新單元的過程中,我想通過膨脹xml佈局來爲視圖添加視圖。問題是,我的眼睛,我有兩個選擇:在自定義視圖中充滿兒童視圖

  1. 誇大它包含了所有在其他佈局 或
  2. 充氣多個XML文件的意見,一個XML文件,每一個都包含了不同的看法

因爲我不想添加另一個佈局作爲佈局的子元素,我也不想誇大許多視圖,那麼最好的方法是什麼?

+0

選擇'1'可以更好地創建單個xml佈局,以便稍後進行更新,您將能夠以編程方式刪除/添加視圖 –

回答

0

您既可以創建視圖編程就像

TextView t = new TextView(context) 

,但如果你申請了很多的風格,這是一個真正的麻煩。其他最簡單但速度最慢的選項就是你提到的內容:內嵌每個視圖 - 如果你有很多視圖(比如20+),那麼請注意,這可能會讓你放慢腳步,因爲充氣非常昂貴。

第三個選項,如果你知道你的動態視圖的最大數量是有一個視圖與所有你需要的子視圖最大,只是設置所有其他視圖。這也是一種黑客,但速度比它快。

最後一個也是最好的選擇是從ListView繼承,只是使用Adapter

+0

感謝您的回答。我不喜歡第三種選擇,因爲我的觀點不應該是任何方式的ListView,它會被強制。我只會誇大一個佈局 –