我正在构建一个包含10个标签(类别)的Android应用程序。
我使用函数loaddata(category_id)
来检索包含每个类别的产品列表的数组。
问题是,当我加载应用程序时,第一个和第二个类别总是有第二个产品列表,因为Cardviewholder仅在loaddata(category_id_1)
和loaddata(category_id_2)
完成时执行,因此结果是数组对于第二个category_id_2,第一个和第二个。
这是执行过程:
OnCreateView
initpager
loddata(category_id_1) - doinbackground - 返回包含category_1产品的数组
loddata(category_id_2) - doinbackground - 返回array_with category_2产品
Pageadapter
CarviewHolder array_category_2
CarviewHolder array_category_2
// use a linear layout manager
recList.setLayoutManager(llm);
String[] catid = {""+CatId};
loadData(catid);
while (iList.size() == 0) {
// System.out.println("iList.size() is 0 not yet "+iList.size() );
}
Log.w("pageadapter new CardAdapter", " pageadapter new CardAdapter");
// create an Object for Adapter
CardAdapter ca = new CardAdapter(CatId);
// set the adapter object to the Recyclerview
recList.setAdapter(ca);