求java代码把listview中的新增item每次都添加到第0行?

在做一个把crashlog显示到指定listview的小工具,显示是显示出来了,但是每次新增的crashlog都自动加到listview的最后一位,用了Collections.reverse()只是把表面文件名倒了过来,里面的数据还是不动,想要把每次新增的crashlog都加到第0行,请教大佬该怎么做

private void inflateListView(File[] files) {
        List<Map<String, Object>> listItems = new ArrayList<Map<String, Object>> ();
        for (int i = 0; i < files.length; i++) {
            Map<String, Object> listItem = new HashMap<String, Object> ();
            if (files[i].isDirectory()) {
                // 如果是文件夹就显示的图片为文件夹的图片
                listItem.put("aicon", R.drawable.arrow_down);
            } else {
                listItem.put("aicon", R.drawable.arrow_up);
            }

            // 添加一个文件名称
            listItem.put("filename", files[i].getName());
            File myFile = new File(files[i].getName());

            // 获取文件的最后修改日期

            long modTime = myFile.lastModified();
            SimpleDateFormat dateFormat = new SimpleDateFormat(
                    "yyyy-MM-dd HH:mm:ss");

            System.out.println(dateFormat.format(new Date (modTime)));

            // 添加一个最后修改日期
            listItem.put("modify",  "修改日期:" + dateFormat.format(new Date(modTime)));
            listItems.add(listItem);

        }
     //   Collections.reverse(listItems);


        // 定义一个SimpleAdapter
        SimpleAdapter adapter = new SimpleAdapter (
                SDCardFileExplorerActivity.this, listItems, R.layout.list_item_crashlog,
                new String[] { "filename", "aicon", "modify" }, new int[] {  R.id.afile_name, R.id.aicon, R.id.afile_modify });

        // 填充数据集
        lvFiles.setAdapter(adapter);

https://blog.csdn.net/ddxxii/article/details/51114234

你都知道使用map了,为何不考虑下TreeMap?或者linkedHashMap 这两个都是具有排序功能的。你可以了解下