按时间获取图像顺序android

时间:2017-03-21 06:47:14

标签: java android

我有壁纸应用程序,它具有图像保存功能,我们正在我的收藏菜单中显示该图像。我希望首先将其显示为新保存。有没有机会订购这样的图像?我从数据文件夹中获取图像的代码如下所示。

public void getImages()
{
    File root = new File(Environment.getExternalStorageDirectory()+File.separator+"KaroShare/");
    File[] images = root.listFiles();
    arrayList.clear();
    if(images!=null){
        for(int i=0;i<images.length;i++) {
            if(images[i].getName().endsWith(".png") || images[i].getName().endsWith(".jpg") ||
                    images[i].getName().endsWith(".jpeg")) {
                String path = images[i].getAbsolutePath();
                arrayList.add(path);
            }
        }
    }
}

如果有人有想法,请告诉我。非常感谢!

2 个答案:

答案 0 :(得分:1)

您可以使用currentFile.lastModified()对文件进行排序。

答案 1 :(得分:0)

试试这个

 public void getImages()
    {
        File root = new File(Environment.getExternalStorageDirectory()+File.separator+"KaroShare/");
        File[] images = root.listFiles();
        arrayList.clear();
        if(images!=null){
       Arrays.sort( images, new Comparator()
          {
             public int compare(Object o1, Object o2) {

              if (((File)o1).lastModified() > ((File)o2).lastModified()) {
                return -1;
              } else if (((File)o1).lastModified() < ((File)o2).lastModified())   {
                return +1;
              } else {
                return 0;
            }
         }

    }); 
            for(int i=0;i<images.length;i++) {
                if(images[i].getName().endsWith(".png") || images[i].getName().endsWith(".jpg") ||
                        images[i].getName().endsWith(".jpeg")) {
                    String path = images[i].getAbsolutePath();
                    arrayList.add(path);
                }
            }

        }
    }