Java 如何将主题设置为使用setListAdapter填充的Listview
我有一个listview,它的填充方式如下:Java 如何将主题设置为使用setListAdapter填充的Listview,java,android,listview,Java,Android,Listview,我有一个listview,它的填充方式如下: setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice, aux)) setListAdapter(新阵列适配器)(此, android.R.layout.simple_list_item_多选,aux)) “aux”是静态字符串[]aux=null通过Web服务填充
setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_multiple_choice, aux))
setListAdapter(新阵列适配器)(此,
android.R.layout.simple_list_item_多选,aux))
“aux”是静态字符串[]aux=null代码>通过Web服务填充
我制作了一个主题并使用静态listview元素进行了测试,文件lista.xml->您可以看到它(如果您查看底部,您将看到我放置了“列表项1,列表项2”,因此我需要以友好方式填充这些值…)
我的问题是,如何将主题应用于我的listadapter
我相信我从以下几点开始:
setListAdapter(新阵列适配器)(此,
R.layout.lista,aux)
但我有两个问题
(1) 我不知道如何使用XML和从java填充(setlistadapter)
(2) 我相信我会失去复选框
不过,如果有人能帮上忙,我将不胜感激:)我真的不知道我现在在做什么
setListAdapter(new ArrayAdapter(this, R.layout.lista, aux))
是开始,您是对的,但是当您想要自定义ListItem布局时,您必须编写自定义ListAdapter。例如,您可以扩展ArrayAdapter
。在这里,您重写了方法getView()
,并在该方法中使用Aux对象的值填充自定义布局
对于ArrayAdapter,必须在布局中为listview项设置id
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:id="@+id/textview" android:layout_weight="1">
</TextView>
使用id/textview,您可以说您的listAdapter要呈现到此视图中
编辑:哦,你必须学习并遵守列表持有者的概念。这里:谢谢你的帮助,但我有个问题。。。根据您的建议,我很快将android:id替换为android:text(如您所述),并且必须替换setListAdapter的适配器(新的ArrayAdapter(this,R.layout.lista,R.id.textview,aux));问题是:因为每个listview元素都在创建布局的所有其他元素,所以一切都一团糟。我该如何解决这个问题呢?也许您的底层modeldata是一个“一体式”对象,所以您必须在定制的ListAdapter中定义getItem(int)方法。在这个方法中,您定义了如何从ItemObject(aux)中获取一个项。