我正在设置OnItemClickListener
,我无法看到两种方法之间的区别,它们都运行得很好,我无法从文档中了解它们之间的区别。
答案 0 :(得分:4)
它们是在不同的类别上定义的 - 这是唯一的区别。
适配器方法调用另一个。
ArrayAdapter<T>
Android Source code.
public T getItem(int position) {
return mObjects.get(position);
}
你实际上并不需要&#34;在您的班级中独立存储Arraylist。
ArrayAdapter有自己的add()
方法,你可以调用没有列表的构造函数。
public ArrayAdapter(@NonNull Context context, @LayoutRes int resource) {
this(context, resource, 0, new ArrayList<>());
}
答案 1 :(得分:0)
主要区别在于适配器更适合在UI中显示信息。因此,如果必须在ListView中显示列表,则只能使用适配器。
主要优点是您不必管理列表和适配器,并且在更新阵列时将更新UI。但是,您可能需要致电
adapter.notifyDataSetChanged();
在某些时候刷新UI。