我想爲每一行添加漸變。我試圖做的是在listview標籤把這個attribut,android:background =「@ drawable/mygradient」。但我得到的是這個漸變顯示在列表中。我想要的是爲每個項目顯示此漸變。Android:ListView爲每一行添加漸變
在此先感謝
我想爲每一行添加漸變。我試圖做的是在listview標籤把這個attribut,android:background =「@ drawable/mygradient」。但我得到的是這個漸變顯示在列表中。我想要的是爲每個項目顯示此漸變。Android:ListView爲每一行添加漸變
在此先感謝
您可以提供自定義適配器您列表視圖並將梯度設置爲其getView
方法中的背景。事情是這樣的:
public class MyAdapter extends BaseAdapter {
List<MyDataType> myData;
Context context;
public MyAdaptor(Context ctx, List<MyDataType> myData) {
this.myData = myData;
this.context = ctx;
}
public int getCount() { return myData.size() };
public Object getItem(int pos) { return myData.get(pos); }
public long getItemId(int pos) { return 0L; }
public View getView(int pos, View convertView, ViewGroup parent) {
//this is where you can customise the display of an individual
//list item by setting its background, etc, etc.
...
//and return the view for the list item at the end
return <List item view>;
}
}
然後你就可以把這個適配器作爲適配器列表:
ListView myList = <initialise it here>
myList.setAdapter(new MyAdapter(getContext(), listData);
現在只要一個列表項需要顯示,getView
方法將被調用,在那裏你」將執行所有必要的顯示定製,包括設置背景。
它已經花了我2天,但最終我設法做到了。我不習慣自定義適配器,所以它很困難。無論如何,感謝您的幫助,它非常有用。 – user1139368 2012-01-30 21:44:29
並且一年多之後它仍然沒有被標記爲答案= / – 2013-06-28 18:46:18
相反名單的設置背景屬性設置選擇,如下:
機器人:listSelector =「@繪製/ list_selector_background」
這似乎只有在選擇某個項目時才起作用。 – sdasdadas 2013-03-01 02:58:31
你使用自定義的listview嗎?嘗試過的代碼可能有助於給出答案,發佈代碼 – Abhi 2012-01-28 11:43:03
沿着列表顯示..如何看待?你可以張貼截圖嗎? – 2012-01-28 11:43:18