使用SimpleAdapter将背景图像应用于ListView

时间:2011-05-31 03:30:03

标签: android listview listadapter simpleadapter

我最近使用ListAdapter创建了一个ListView,并在列表后面应用了一个静态背景图像;

  String[] teams = getResources().getStringArray(R.array.array);
  setListAdapter(new ArrayAdapter<String>(this, R.layout.list_view, teams));

  ListView lv = getListView();
  lv.setTextFilterEnabled(true);

  lv.setBackgroundResource(R.drawable.football_turf_subtle);

  lv.setCacheColorHint(0);

我现在转而使用SimpleAdapter在每个列表项中包含各种项目。

  setContentView(R.layout.custom_list_view);

  SimpleAdapter adapter = new SimpleAdapter(this, list, R.layout.row_view,
  new String[] {"pen","price","color"},
  new int[] {R.id.text1,R.id.text2, R.id.text3} );

  populateList();

  setListAdapter(adapter);

仅供参考,上面列表中的项目来自我找到的一个例子。我遇到的问题是我不知道如何应用背景图像,就像我之前使用ListAdapter版本一样。 (即setBackgroundResource)

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:1)

<ListView android:cacheColorHint="#00000000" android:textSize="10dip"
    android:dividerHeight="1dip" 
    android:smoothScrollbar="true" android:background="@drawable/worldmap4"
    android:id="@+id/ListView01" android:layout_width="fill_parent"
    android:layout_height="fill_parent" android:clickable="true"
    android:drawingCacheQuality="auto" android:fastScrollEnabled="true"
    android:footerDividersEnabled="true" android:focusableInTouchMode="true"
    android:isScrollContainer="true" android:keepScreenOn="true"
    android:scrollbarStyle="outsideOverlay"></ListView>

机器人:背景= “@绘制/ worldmap4” 在xml文件中添加此元素,用于设置ListView的静态背景。 我希望这是有帮助的。

答案 1 :(得分:0)

方法完全相同。无论您使用的适配器类型如何,您设置的后台资源都将应用于ListView。

我有一个带有3个TextView的自定义列表项,使用SimpleCursorAdapter,当使用setCacheColorHint(0)在ListView上设置后台资源时,它可以正常工作。