1
我有一个返回JSON数组的PHP脚本。数组中的每个JSON对象都是一个人,并且具有诸如姓名,电话号码,年龄等相关信息。动态构建带有JSON数组的ListView
我想要做的是动态构建一个ListView,它将显示信息,列表中的每个元素显示一个名称,一个电话号码和一个年龄。
现在我有基本的代码循环通过我的JSON数组,但我如何设置我的适配器,以便它显示这3个单独的信息?我知道如何显示单个项目(如名称),但我不能100%确定如何创建可显示JSON对象的多个项目的适配器。
JSONArray json = new JSONArray(result);
setContentView(R.layout.activity_doctor_list);
ListView listView = (ListView) findViewById(R.id.listView);
ArrayList<String> listItems = new ArrayList<String>();
ArrayAdapter<String> adapter = new ArrayAdapter<String>
(getApplicationContext(), R.layout.doctor_item, listItems);
JSONObject doctor;
for(int i =0; i < json.length(); i++){
doctor = json.getJSONObject(i);
}
所以getView()主要增加了对我的文字。我在每个JSONObject上调用这个函数,然后调用setAdapter()? – ryhmaxd 2015-02-12 02:33:47
不,您通过传递上下文和json数组来创建适配器,然后调用'setAdapter()'。或者立即执行:'setAdapter(new MyAdapter(this,jsonarray))'。 'ListView'会随时调用'getView()'。 – mbmc 2015-02-12 03:01:29