我试图弄清楚ArrayAdapter构造函数中的资源ID是什么。我也有其他一些问题:
ArrayAdapter
的目的不是推送任何类型的物品吗?TextView
?ArrayAdapter<View>
,其中View
可以是View
吗?答案 0 :(得分:1)
要用于该ArrayAdapter实例的布局。
通常你可以使用android中的默认值:android.R.layout.simple_list_item_1
为什么它只是一个TextView:因为那是ArrayAdapter的实现方式。它必须包含用于排序/过滤等的TextView
如果您想要一个自定义视图,您可以创建一个扩展ArrayAdapter的自定义适配器,并覆盖getView(...)
答案 1 :(得分:1)
它用于什么
如果提供,则指向行布局内TextView
的ID。如果未提供,并且您使用getView()
的默认ArrayAdapter
实现,那么行布局必须 TextView
。
为什么它应该指向一些文字
因为getView()
上的ArrayAdapter
的内置实现想要获取模型对象的toString()
并将该文本放入TextView
。
为什么只说TextView?
因为这就是getView()
上ArrayAdapter
的内置实现所期望的。
我不能使用arrayadapter,其中view可以是任何视图吗?
是的,你可以。但是,如果您的行中没有TextView
,则无法使用getView()
的内置实现,并且必须谨慎地覆盖它。