我已将此代码用于行布局:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@drawable/bckimage"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:textSize="16sp" >
</TextView>
这适用于构建列表的类:
public class ListTestActivity extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
String[] myArray = new String[] {...};
super.onCreate(savedInstanceState);
setListAdapter(new ArrayAdapter<String>(this, R.layout.listlayout,myArray));
ListView listView = getListView();
listView.setCacheColorHint(0);
listView.setBackgroundResource(R.drawable.bckimage);
listView.setTextFilterEnabled(true);
listView.setOnItemClickListener(new OnItemClickListener() {
//. . .
});
}
}
这显示每行的图像,而不是整个背景。如何为背景添加单个图像?我在这里看到了几种方法,但没有任何效果。
答案 0 :(得分:2)
将图像设置为ListView
元素的背景:
getListView().setBackgroundResource(R.drawable.bckimage);
您的列表行可能隐藏背景图片。另外添加:
getListView().setCacheColorHint(android.R.color.transparent);
答案 1 :(得分:0)
如您所述,将背景设置为列表而不是行布局。
您可以通过以下方式将背景设置为列表:
((ListView)findViewById(android.R.id.list)).setBackgroundResource(R.drawable.bckimage);
每当您使用ListActivity时,它都具有带有ID&#34; list&#34;的ListView。