这是我的代码,它运行良好。 我想从我的JSON数据中获取多个值(包括图像地址)并在我的listview的每一行中显示它们但我不能这样做我只能获得一个数据(标题)并将其放在简单列表中,我怎么能用我自己的单行布局替换 android.R.layout.simple_list_item_1 ?我是Android的新手,我无法理解列表视图和行的循环。
我想做的是从JSON获取一些数据并在我的自定义行布局中显示它们,例如谷歌加列表视图,图像,标题和描述
抱歉我的英语不好:)@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
context = this;
setContentView(R.layout.activity_read_restaurants);
restaurantList = (ListView) findViewById(R.id.restaurantList);
final ArrayAdapter<String> restaurantAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,restaurantArray);
restaurantList.setAdapter(restaurantAdapter);
RequestQueue rq = Volley.newRequestQueue(this);
JsonObjectRequest jsonrequest = new JsonObjectRequest(Request.Method.GET,feedURL,null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
JSONArray restaurants = response.getJSONArray("posts");
for (int i =0; i<restaurants.length(); i++){
restaurantArray.add(restaurants.getJSONObject(i).getString("title"));
}
} catch (JSONException e) {
e.printStackTrace();
}
restaurantAdapter.notifyDataSetChanged();
}
},new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(context, error.toString(), Toast.LENGTH_LONG).show();
}
});
rq.add(jsonrequest);
}
答案 0 :(得分:1)
查看本教程以创建arrayadapter并在程序中使用它
它甚至实现了View Holder模式。