java - Android Listview 显示 ArrayList 中的最后一个元素

标签 java android arraylist android-listview

您好,我的代码只显示 ArrayList 的最后一个元素! 这是我的代码:

    ListView list = (ListView) findViewById(R.id.t1player_statsList);

    ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();

    HashMap<String, String> map = new HashMap<String, String>();

    for(Player player : team1.getPlayers())
        map.put("player", player.getName()); 
        map.put("score", "0");
        mylist.add(map);


    SimpleAdapter mSchedule = new SimpleAdapter(this, mylist, R.layout.mylistrow,
                new String[] {"player", "score"}, new int[] {R.id.NameCell, R.id.ScoreCell});
    list.setAdapter(mSchedule);

我觉得这与我的for循环有关。有人可以帮忙吗!提前致谢!

最佳答案

您只创建了一个 Hashmap 实例,它一次又一次地覆盖所有值,最后一个值仍然存在。因此,在 for 循环中创建一个新实例。

    HashMap<String, String> map;

    for(Player player : team1.getPlayers()){
        map = new HashMap<String, String>();
        map.put("player", player.getName()); 
        map.put("score", "0");
        mylist.add(map);
     }

关于java - Android Listview 显示 ArrayList 中的最后一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10664906/

相关文章:

android - Cordova - 如何全屏和循环播放 mp4 视频?

Java 复杂的列表数组迭代

Java:使用 java.util.Base64 与 android.util.Base64 解码 base64 字符串时的不同结果

java - 如何在 Tapestry5 中显示确认消息?

Android Webview 访问被拒绝

android - 如果对象是不同的数据类型,如何在 ArrayAdapter 列表的开头添加对象?

java - 在 ArrayList 的 ArrayList 中查找唯一的 Arraylist

java - 奇怪的异常,JDK 6.0.29 bug?

java - Java的方法 "know"可以自己命名吗?

android - list xml 文件中的多个 android.intent.action.MAIN