当前位置: 首页 > 面试题库 >

从SD卡加载绘图

梁丘远航
2023-03-14
问题内容

我正在尝试从设备sd卡加载png图像作为可绘制图像。我使用以下功能,但不起作用:

public Drawable getDrawable()
{
return new BitmapDrawable(imagePath);
}

图像路径为:mnt / sdcard / MyFolder / image.png

当我尝试调用该方法时,应用程序崩溃了,我该如何加载位于sdcard中的png图像并将其转换为Drawable对象?


问题答案:

实际上,直接在文件路径中有一个BitmapDrawable构造函数。您正在使用的方法已被描述。尝试:

Drawable myDrawable = new BitmapDrawable(getResources(), pathName);

如果这不起作用,请尝试获取位图并从中创建一个可绘制对象:

可以使用以下方式创建位图 decodeFile

您可以像这样使用它:

Bitmap myBitmap = BitmapFactory.decodeFile(pathName);

然后,您可以使用位图进行绘制等。

将位图转换为可绘制的用途

Drawable myDrawable = new BitmapDrawable(getResources(), myBitmap);

看看这里(位图)和
这里(位图可绘制对象)以获取更多信息。



 类似资料:
  • SD卡设备的使用 SD卡设备的使用 源码/* * Copyright (c) 2006-2018, RT-Thread Development Team * * SPDX-License-Identifier: Apache-2.0 * * Change Logs: * Date Author Notes * 2018-09-25 misonyo first edition. *//* * 程序清

  • 我的歌曲适配器: 我从sd卡上取了这首歌,可以在屏幕上看到,但当我尝试播放这些歌曲时,我的应用程序崩溃了,出现了以下错误。尝试调用虚拟方法“void android”。媒体MediaPlayer。在空对象引用上启动()。 我不知道该怎么办请帮忙。 这是我的日志 过程:com。实例壁画。musicmania,PID:26119爪哇。lang.NullPointerException:尝试调用虚拟方法

  • 我需要你的帮助。我正在开发一个android应用程序,我需要从sd卡中随机播放一首歌。我尝试了这种方式: 使用这种方法,我从文件夹中随机选择一首歌曲(此文件夹仅包含mp3文件)。 然后我用这个方法播放提取的歌曲: 我想知道如何使用MediaPlayer播放智能手机sd卡上的歌曲

  • 问题内容: 我希望能够从Android设备的内部缓存中移动或复制文件,并将其放入SD卡上的永久存储区。这是我到目前为止所拥有的: 问题答案:

  • 我正在尝试启动来打开应用程序中资产文件夹中的pdf。我已经读了几十个帖子,但仍然卡住了。显然,我需要先将pdf复制到sd卡,然后启动。还是不起作用。 我认为问题是启动,所以我只是尝试打开一个文件“example.pdf”,我使用以下代码复制到SD卡上: 这是我的LogCat输出。 除了在运行此代码时,我得到以下吐司(不是由我的应用程序生成的) “不支持的文档类型” 但是我可以通过安装的PDF查看应

  • 问题内容: 我希望我的应用程序将应用程序数据库归档到SD卡。在我的代码中,我检查目录是否存在,如果不存在,则抛出。在此特定情况下,我尝试将db文件复制到SD卡上的根目录,但是会抛出。如何更改文件夹/文件的权限以能够写入? 问题答案: 没错,SD卡目录位于其中,但您不应该对其进行硬编码。而是调用以获取目录: 如果尚未执行此操作,则需要在清单中添加以下行,以授予您的应用正确的写入SD卡的权限: