2014-02-23 37 views
0

在我的应用程序中,我需要调用手机上Saved Pictures相册的图像,并检索已保存的最新内容。我需要保证按日期收集最新的图像。目前,我只是反转收集和收集图片,但是我意识到这实际上并不总是获取最新的图片,因为它们按照名称(从我所知道的)排列在PhotosHub的默认“保存的图片”专辑中。我如何按日期抽取和分类这个集合,以便我能够抽出最近的?如何按日期对PictureCollection进行排序

private PictureCollection _pictures = null; 

public void GetImages() 
{ 
    using (MediaLibrary library = new MediaLibrary()) 
    { 
     foreach (PictureAlbum album in library.RootPictureAlbum.Albums) 
     { 
      if (album.Name == "Saved Pictures") 
      { 
       _pictures = album.Pictures; 

       if(_pictures != null) 
       { 
        //search for the most recent pictures in the album 
        foreach (var p in _pictures.Reverse()) //need to sort by date first 
        { 
         //Do something with pictures 

        } 
       } 
      } 
     } 
    } 
} 

回答

0

我会去如下:

  1. 变化_pictures是的List<Picture>代替PictureCollection

  2. 变化GetImages方法:

    public void GetImages() 
    { 
        using (MediaLibrary library = new MediaLibrary()) 
        { 
         var savedPictures = library.RootPictureAlbum.Albums.First(a => a.Name == "Saved Pictures"); 
    
         _pictures = savedPictures.Pictures.OrderByDescending(p => p.Date).ToList(); 
        } 
    } 
    
相关问题