如何为Android实现自定义设备照片库?

时间:2010-12-14 12:03:24

标签: android gridview android-intent gallery

我正在开发包含基本图库功能的Android应用程序。我已经设法构建从我的应用程序后端API获取照片列表的活动,并在活动布局中在android gridview中渲染它们。

目前的情况如下:
alt text

但是,我很难为相机拍摄并存储在设备上的用户设备照片构建相同的图库体验。我考虑过的两个解决方案是:

  1. 建立自己的图片库。
  2. 使用intent启动默认的android图库。
  3. 解决方案1:我相信第一个解决方案会花费我太多时间来开发。我从this tutorial开始,但是一旦我实现了它,我发现它运行得太慢了。然后我看看android camera source code找到解决方案,但我又发现我需要花费太多时间来检查代码并从头开始构建自己的库。我还认为,重写已经存在的功能,但使用Intents来启动可以处理所需操作的活动,不是Android OS理念。这引出了我的第二个解决方案。

    解决方案2:我尝试使用意图调用默认的android图库,以便很快再次卡住浏览用户的设备照片。这次问题是,一旦用户点击照片,画廊退出并返回原始启动它的活动,我期望(并且我想)开始大型图像预览。我看到其他人也有这个问题how to open gallery via intent without result。 因为我没有找到解决方法,所以我决定退出。

    我的问题是如何克服这些问题,并建立类似于我已经拥有的网络照片的画廊。 如果有人能给我参考,我会非常感激。

1 个答案:

答案 0 :(得分:1)

这个问题已经很老了,但由于它有很多观点和相当多的赞成,所以给它答案可能会很好。

所以,首先教程有所改进,你可以为#1 选项找到一些很酷的东西:

  • This是我喜欢的
  • This one使用已弃用的UI元素,但也很酷
  • This使用适配器,这对我来说是最好的方法。

对于#2 选项,我看不出任何想法不返回原始活动,因为您仍然无法控制通过系统发送的意图的结果。< / p>

但还有一个你没有提到的解决方案:有一些非常酷的图书馆,你可以自定义以获得你想要的东西:

  • This一个有点花哨
  • This一个似乎也很酷,但你可能会导致导入它,因为它不是一个gradle项目
  • This是我肯定会使用的。