如何对我的适配器进行编程,以便在ArrayList
内的onPostExecute
内可视化AsynkTask
的内容?
我有以下课程:
class PlatoCuenta{
public String id;
public String name;
public Integer served_as;
public String served;
public String price;
public String quantity;
public String title_cuenta;
}
我有以下数组列表:
ArrayList<PlatoCuenta> bebidas=new ArrayList<PlatoCuenta>();
bebidas=new ArrayList<PlatoCuenta>();
JSONArray mArray = new JSONArray(jsonstr);
for(int i = 0; i < mArray.length(); ++i) {
JSONObject currentObject = mArray.getJSONObject(i);
PlatoCuenta producto= new PlatoCuenta();
SectionItem SectionCuenta = new SectionItem();
producto.id=currentObject.getString("id");
producto.served=currentObject.getString("served");
if(currentObject.getString("price").equals("None"))
producto.price="0.00";
else
producto.price=currentObject.getString("price");
producto.name= currentObject.getString("product_name");
producto.quantity=currentObject.getString("product_number");
producto.served_as = currentObject.getInt("serv_order");
if(producto.served_as==0){
SectionCuenta.title="bebidas";
producto.title_cuenta=SectionCuenta.title;
bebidas.add(producto);
}
if(producto.served_as==2){
SectionCuenta.title="entrantes";
producto.title_cuenta=SectionCuenta.title;
bebidas.add(producto);
}
}
答案 0 :(得分:0)
假设您有ArrayList<PlatoCuenta> bebidas=new ArrayList<PlatoCuenta>();
。可视化列表视图的一般步骤是:
再次假设您已经拥有了row.xml的设计。创建适配器(步骤2)。
public class MyAdapter extends BaseAdapter {
public MySimpleArrayAdapter(Context context, ArrayList list) {
super(context, R.layout.rowlayout, values);
//....
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView = inflater.inflate(R.layout.row.xml, parent, false);
//continue creating your row here
return rowView;
}
}
在onPostExecute
:
MyAdapter adapter = new MyAdapter(context,bebidas);
listView.setAdapter(adapter);
好教程:Custom ListView