Java 在自定义ArrayList适配器方案中调用.setAdapter时,操作流是什么?
当试图在活动中填充ListView时,ArrayAdapter如何与ArrayList交互的概念让我有点困惑 下面是一个让我有点困惑的指南示例: 形象Java 在自定义ArrayList适配器方案中调用.setAdapter时,操作流是什么?,java,android,listview,arraylist,Java,Android,Listview,Arraylist,当试图在活动中填充ListView时,ArrayAdapter如何与ArrayList交互的概念让我有点困惑 下面是一个让我有点困惑的指南示例: 形象 如果查看构造函数中的UsersAdapter,您将看到实际上是将ArrayList用户作为最后一个参数传递给父类构造函数 super(context, R.layout.item_user, users); ArrayAdaper保留对传入的用户列表的引用,并在内部使用。如果查看ArrayAdapter中的getItem(…)所做的事情,它只
如果查看构造函数中的
UsersAdapter
,您将看到实际上是将ArrayList用户作为最后一个参数传递给父类构造函数
super(context, R.layout.item_user, users);
ArrayAdaper
保留对传入的用户列表的引用,并在内部使用。如果查看ArrayAdapter
中的getItem(…)
所做的事情,它只是从指定索引处的列表返回项目
public T getItem(int position) {
return mObjects.get(position); // mObjects references same ArrayList as users
}
长话短说,这与使用用户相同。在本例中,获取(位置)
public class User {
public String name;
public String hometown;
public User(String name, String hometown) {
this.name = name;
this.hometown = hometown;
}
}
super(context, R.layout.item_user, users);
public T getItem(int position) {
return mObjects.get(position); // mObjects references same ArrayList as users
}