2012-04-05 125 views
1

如何更改ListView的單個單元格的背景? 我用java寫的:Android:背景列表視圖

n_list = new ListView(this); 
n_list.setBackgroundDrawable(getResources().getDrawable(R.drawable.list_pressed)); 

這種方式改變了整個列表的背景。當我按下單元格時,它會更改所有單元格的背景。

list_pressed.xml上繪製

<?xml version="1.0" encoding="utf-8"?> 

    <selector xmlns:android="http://schemas.android.com/apk/res/android"> 

    <item android:state_focused="true" 
      android:drawable="@drawable/listviewpress" /> 

    <item android:state_pressed="true" 
      android:drawable="@drawable/listviewpress" /> 
    <item 
      android:drawable="@drawable/listview" /> 
</selector> 

我該如何解決這個問題? 在此先感謝:)

+0

查看本系列的ListView教程**(http://www.technotalkative.com/category/android/listview/),從頭到尾考慮問題。下次你將有足夠的信心建立ListView。 – 2012-04-06 11:09:02

回答

2

您需要創建一個Custom Adapter,並在getView()中,您可以說你​​想給你的行的顏色。

如果您按照鏈接上的教程,您可以使用所需的顏色在convertView a setBackground()上執行操作。如果你想要一個特定的位置,只要在這之前做一個setBackground

1

下面是幾個網址有customadapter列表視圖,讓您可以在getVIew設置背景行()::

LINL1

LINK2

LINK3

LINK4

LINK5