idi*_*ish 6 java android path sd-card drawable
我正在尝试从我的设备SD卡中加载一个png图像作为drawable.我使用以下函数,但它不起作用:
public Drawable getDrawable()
{
return new BitmapDrawable(imagePath);
}
Run Code Online (Sandbox Code Playgroud)
图像路径为:mnt/sdcard/MyFolder/image.png
当我尝试调用该方法时应用程序崩溃,我应该如何加载位于我的SD卡中的png图像并将其转换为Drawable对象?
Doo*_*ght 13
实际上直接来自文件路径的BitmapDrawable构造函数.您正在使用的方法已被删除.尝试:
Drawable myDrawable = new BitmapDrawable(getResources(), pathName);
Run Code Online (Sandbox Code Playgroud)
如果这不起作用,请尝试获取位图并从中创建一个drawable:
可以使用创建位图 decodeFile
你可以像这样使用它:
Bitmap myBitmap = BitmapFactory.decodeFile(pathName);
Run Code Online (Sandbox Code Playgroud)
然后你可以使用位图进行绘图等.
将Bitmap转换为可绘制用途
Drawable myDrawable = new BitmapDrawable(getResources(), myBitmap);
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请查看此处(位图)和 此处(位图Drawables).