2010-06-29 30 views
2

有沒有辦法用不同的視圖製作一個列表? 我的意思是在posiotion X中的行將有佈局「X.xml」 和行號Z將佈局「Y.xml」?單個列表上的不同意見(安卓)

我試過在幾個方面,但沒有成功操縱ListRowAdapter()和getView()...

+0

@ user379425您可以選擇CommonsWare的答案是正確的(假設它做什麼,它說,它不會) – 2010-06-29 21:39:10

回答

0

我解決它以另一種方式:在ListRowAdapter - > getView() 我做了對充氣的if()語句:

LayoutInflater inflater=context.getLayoutInflater(); 
View row=inflater.inflate(R.layout.X, null); 
if(somthing) 
{ 
row=inflater.inflate(R.layout.Y, null); 
//whatever 
} 
and in the end: return row; 

的作品就像一個魅力:)

0

我不認爲有一個簡單的方法來做到這一點開箱。根據佈局的不同,您可能會想出一個佈局,然後根據行顯示或隱藏getView中的元素。如果您將項目設置爲Layout.GONE,就好像它不在那裏。

+0

這就是我現在有,但我需要改變 - 一個佈局只是一個TextVie W和另一個是6 .. – gilmad 2010-06-29 21:12:25

7

嗨,有沒有辦法使 不同的意見清單?我的意思是 posiotion X中的行將有佈局「X.xml」 和行號Z將佈局 「Y.xml」?

當然。

步驟#1:創建一個Adapter類,通過延伸BaseAdapterArrayAdapterCursorAdapter

步驟#2:實施getViewTypeCount()返回多少不同行類型有

步驟#3:執行getItemViewType()以返回0getViewTypeCount()返回的數值,指示給定位置將使用哪個行類型

步驟#4:覆蓋getView()(或newView()bindView()CursorAdapter),並把它創建右排

+0

感謝您的快速響應! 這真的很有幫助。 有沒有你知道的例子? 我從例子學得更快...... :) – gilmad 2010-06-29 21:10:09

+0

好吧,你可以看看:http://github.com/commonsguy/cw-advandroid/tree/master/ListView/Sections/或http://jsharkey.org/ blog/2008/08/18/separated-lists-with-headers-in-android-09/- 第二個有點舊 – CommonsWare 2010-06-30 06:57:45