我将很多可绘制对象传递给int数组,然后将其加载到构造函数中。该方法如下所示:
public static final int contactsArray[] = { R.drawable.contact_image_1,
R.drawable.contact_image_2,
R.drawable.contact_image_3,
R.drawable.contact_image_4,
R.drawable.contact_image_5 };
之后,以目前的方式:
public static List<DataModel> getContacts()
{
List<DataModel> items = new ArrayList<DataModel>();
items.add(new DataModel(contactsArray[0]));
items.add(new DataModel[1]));
items.add(new DataModel(contactsArray[2]));
items.add(new DataModel(contactsArray[3]));
items.add(new DataModel(contactsArray[4]);
return items;
}
使用旧方法:
public static List<DataModel> getContacts() {
List<DataModel> items = new ArrayList<DataModel>();
items.add(new DataModel(R.drawable.contact_image_1));
items.add(new DataModel.drawable.contact_image_2));
items.add(new DataModel(R.drawable.contact_image_3));
items.add(new DataModel(R.drawable.contact_image_4));
items.add(new DataModel(R.drawable.contact_image_5);
return items;
}
我将ViewHolder模式用于列表,并将
getContacts()
方法作为适配器参数传递。我的问题是,如果我先将可绘制对象加载到int数组中,或者只是在每个构造函数参数中传递每个可绘制资源引用,是否会对性能产生影响?
谢谢。
最佳答案
此更改就像将文件路径保留在数组中一样,并且不会影响性能,因为图像的加载发生在适配器中