在ListView中更改ImageView

Jet*_*Pro 0 android listview imageview

我看到了Android Hive的代码,我学会了如何从PHP脚本向我的Android/Java代码发送数组JSON.我成功地从我的在线数据库中检索了所有细节,并以我想要的格式显示它们.

问题是,我不知道在ListView中设置图像的src时很热.这是我的代码.

                ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
                JSONParser jParser = new JSONParser();
                JSONObject json = jParser.getJSONFromUrl("http://domain.com/directory/database/retrieveComments.php?placeId=" + stringPlaceId);
                try
                {
                    commentsRatingsArray = json.getJSONArray("commentsRatings");
                    for(int i = 0; i < commentsRatingsArray.length(); i++)
                    {
                        JSONObject jsonObject = commentsRatingsArray.getJSONObject(i);
                        String dbUserFullName = jsonObject.getString(TAG_FULLNAME);
                        String dbUserEmail = jsonObject.getString(TAG_EMAIL);
                        String dbComment = jsonObject.getString(TAG_COMMENT);
                        String dbRating = jsonObject.getString(TAG_RATING);
                        String dbDate = jsonObject.getString(TAG_DATE);
                        String dbTime = jsonObject.getString(TAG_TIME);

                        HashMap<String, String> map = new HashMap<String, String>();
                        map.put(TAG_FULLNAME, dbUserFullName);
                        map.put(TAG_EMAIL, dbUserEmail);
                        map.put(TAG_COMMENT, dbComment);
                        map.put(TAG_RATING, dbRating);
                        map.put(TAG_DATE, dbDate);
                        map.put(TAG_TIME, dbTime);

                        list.add(map);
                    }   
                }
                catch (Exception e)
                {
                    e.printStackTrace();
                    Toast.makeText(getBaseContext(), "Connection to the server is lost. Please check your internet connection.", Toast.LENGTH_SHORT).show();
                }

                ListAdapter adapter = new SimpleAdapter
                        (DisplayCommentsRatings.this, list, R.layout.commentrating,

                            new String[] { TAG_FULLNAME, TAG_EMAIL, TAG_COMMENT, TAG_DATE,  TAG_TIME },
                            new int[] {R.id.tvUserFullName, R.id.tvUserEmail, R.id.tvUserComment, R.id.tvDate, R.id.tvTime });

                setListAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

请帮帮我,谢谢.

Par*_*ani 5

为此,我建议您为ListView 定义自定义适配器.

  1. 您可以通过扩展BaseAdapter或ArrayAdapter来创建自定义适配器类.
  2. 覆盖getView()方法.
  3. 在覆盖getView()方法时遵循ViewHolder模式.

在这里,Ravi写了:Android自定义ListView与图像和文本.

到目前为止最好的解决方案:Andoid - ListView中的图像延迟加载

  • 很好的和精确的答案 (2认同)