Android 以编程方式设置listview的背景色

Android 以编程方式设置listview的背景色,android,listview,colors,Android,Listview,Colors,我试图在列表视图中设置条目的备用颜色。我尝试使用setBackgroundColor和setBackgroundResource,但我似乎只能得到透明的背景 public View getView(final int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = inflateView(R.layout

我试图在列表视图中设置条目的备用颜色。我尝试使用setBackgroundColor和setBackgroundResource,但我似乎只能得到透明的背景

public View getView(final int position, View convertView, ViewGroup parent) {
            if (convertView == null) {
                    convertView = inflateView(R.layout.pending_list);
                    if(position % 2 != 0){
                        convertView.setBackgroundResource(R.drawable.list_item_odd);
                    } else {
                        convertView.setBackgroundResource(R.drawable.list_item_even);
            }
            return convertView;
        }
    }
这是list\u item\u odd.xml

<item android:state_pressed="true"><shape>
        <solid android:color="@color/blue" />
    </shape></item>
<item android:state_focused="true"><shape>
        <solid android:color="@color/blue" />
    </shape></item>
<item><shape>
        <solid android:color="@color/bluish" />
    </shape></item>


这是colors.xml文件

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

<color name="blue">#006C9C</color>
<color name="white">#ffffff</color>
<color name="whitish">#FDFDFD</color>
<color name="bluish">#F2F9FD</color>

</resources>

#006C9C
#ffffff
#FDFDFD
#F2F9FD
我还不明白为什么我会得到这个结果。

这对我很有用

 private int[] listdrawable ={R.drawable.list_backgroung, R.drawable.list_backgroung1111}; //list of drawable background

    int colorPos = position % listdrawable.length;    //in getView() method before setting the values
    convertView.setBackgroundResource(listdrawable[colorPos]);

 reurn convertView;

可能重复的list_item_odd.xml是一个选择器,请删除它并以正确的方式执行。它起作用了。在空检查之后,我不得不设置BackgroundResource