Android中的ListView的setBackgroundDrawable

时间:2011-06-04 15:49:23

标签: android listview

如何将drawable设置为类中列表视图的背景?

if (array1.size() < 8)
{
    lv1.setBackgroundDrawable(R.drawable.bgimghs2b);
}

是不合适的。

5 个答案:

答案 0 :(得分:60)

那是因为你没有给它一个Drawable,而是一个可绘制的ID。尝试:

lv1.setBackgroundDrawable(getResources().getDrawable(R.drawable.bgimghs2b))

如果你正在参加一项活动。如果没有,那么您需要获得Context并在其上调用getResources()

答案 1 :(得分:11)

使用此:android.view.View.setBackgroundResource(int resID)

lv1.setBackgroundResource(R.drawable.bgimghs2b);

答案 2 :(得分:8)

更新: 不推荐使用该方法,您可以使用:

  1. 仅限API 16或以上。

      

    setBackground(可绘制背景)

  2. 如果您有API 16使用的以前的版本

      

    setBackgroundResource(int resid)

答案 3 :(得分:5)

您应该使用:

Drawable background = this.getResources().getDrawable(R.drawable.yourBackgroundDrawableID);
lv.setBackgroundDrawable(background);

答案 4 :(得分:0)

(:或使用

lv1.setBackground(R.drawable.bgimghs2b);