【问题标题】:Reusing default Android image gallery?重用默认的 Android 图片库?
【发布时间】:2011-08-10 15:34:31
【问题描述】:

我在网上找到的所有显示图片库的示例都需要创建自定义适配器并进行大量手动工作。是否没有一个意图,我可以简单地将路径或过滤器传递给以重用默认图片库功能(显示缩略图、触摸以查看完整图片、共享选项等),但将结果限制在我的应用程序的存储目录中?

【问题讨论】:

    标签: java android image gallery


    【解决方案1】:
    1. Gallery 应用程序无权访问您应用程序存储目录中的文件。

    2. 图库应用程序不是 Android 操作系统的一部分。

    3. Gallery 应用程序通常被设备制造商用他们自己的实现替换,因此即使您发现启用此功能的常规 Gallery 应用程序的一些诡异后门,它也可能无法在许多设备上运行。

    4. Android 本身,在开源项目中,有两个 Gallery 应用程序(Gallery 和 Gallery3D),我不知道哪个必须在任何设备上(如果有的话)或者哪个是您认为提供的“默认图片库功能”。

    但是,这些 Gallery 应用程序是开源的,因此欢迎您从其中复制您喜欢的任何代码。

    【讨论】:

    • 谢谢。我知道这些可能因设备和操作系统版本而异,但我想知道是否有一个由 Intent 提供的标准。我确信自己推出自己的产品不会非常困难,甚至可能让我有机会用它做一些非常酷的事情……只是想在最初的发布阶段节省一些开发时间。
    • @Rich:您的场景没有标准 Intent 的原因是我列表中的第 1 项——无论如何它无法读取您的文件。
    • 对于本地应用程序存储是的,但我的图像正在保存到 SD 卡中。
    【解决方案2】:

    您可以使用此代码启动图库。 视频代码是

            Intent intent = new Intent();
            intent.setType("video/*");
            intent.setAction(Intent.ACTION_GET_CONTENT);
            startActivityForResult(Intent.createChooser(intent, "Select Video"), 666);
    

    图像的代码是

            Intent intent = new Intent();
            intent.setType("image/*");
            intent.setAction(Intent.ACTION_GET_CONTENT);
            startActivityForResult(Intent.createChooser(intent, "Select Video"), 666);
    

    从画廊中得到东西后,你可以做任何你想做的事 如果您需要问其他任何问题,请发布 谢谢

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多