位图工厂抛出 FileNotFoundException
Bitmap Factory throws FileNotFoundException
我有一个奇怪的问题。我正在尝试在我的 Android 项目中使用我的 res/drawable 文件夹中的 PNG 文件,并在我需要解码的 ImageButton(具有方法 "setImageBitmap(Bitmap bm)")中使用这样的 PNG 文件res/drawable 文件中的 PNG 图片。但是,当我复制路径并尝试像这样对其进行解码时:
public Bitmap getBitMap() {
return BitmapFactory.decodeFile("drawable/bishop00.png");
}
我看到一些帖子说我也可以使用 BitmapFactory 的 "decodeResources" 方法,但是这段代码不在 activity 中,我不想使用 [=23] =] 作为仅使用该方法的参数,因为这应该有效。我也尝试过使用绝对路径(复制显示我系统的整个层次结构的路径)但我仍然遇到以下异常:
Unable to decode stream: java.io.FileNotFoundException
真的希望得到一些帮助,因为我完全确定该文件存在。
I am trying to use a PNG file from my res/drawable folder within my Android project
这是您开发机器上的一个文件。它不是 Android 设备上的文件。
seeing as this should work
不,不应该。
I saw some threads that said that I could also use the "decodeResources" method of BitmapFactory
这是正确答案,假设此内容首先应该是可绘制资源。虽然使用 decodeResource()
有一些合理的理由,但总体上并不常用。可能有其他更合适的使用可绘制资源的方法,或者这可能首先不应该是可绘制资源。
but this code is not in an activity
decodeResource()
需要一个Context
。它不一定是 Activity
,尽管这通常是一个可能的候选者。您的所有代码都沿着以 Context
开头的代码路径执行;你在这里使用一个应该没有问题。
我有一个奇怪的问题。我正在尝试在我的 Android 项目中使用我的 res/drawable 文件夹中的 PNG 文件,并在我需要解码的 ImageButton(具有方法 "setImageBitmap(Bitmap bm)")中使用这样的 PNG 文件res/drawable 文件中的 PNG 图片。但是,当我复制路径并尝试像这样对其进行解码时:
public Bitmap getBitMap() {
return BitmapFactory.decodeFile("drawable/bishop00.png");
}
我看到一些帖子说我也可以使用 BitmapFactory 的 "decodeResources" 方法,但是这段代码不在 activity 中,我不想使用 [=23] =] 作为仅使用该方法的参数,因为这应该有效。我也尝试过使用绝对路径(复制显示我系统的整个层次结构的路径)但我仍然遇到以下异常:
Unable to decode stream: java.io.FileNotFoundException
真的希望得到一些帮助,因为我完全确定该文件存在。
I am trying to use a PNG file from my res/drawable folder within my Android project
这是您开发机器上的一个文件。它不是 Android 设备上的文件。
seeing as this should work
不,不应该。
I saw some threads that said that I could also use the "decodeResources" method of BitmapFactory
这是正确答案,假设此内容首先应该是可绘制资源。虽然使用 decodeResource()
有一些合理的理由,但总体上并不常用。可能有其他更合适的使用可绘制资源的方法,或者这可能首先不应该是可绘制资源。
but this code is not in an activity
decodeResource()
需要一个Context
。它不一定是 Activity
,尽管这通常是一个可能的候选者。您的所有代码都沿着以 Context
开头的代码路径执行;你在这里使用一个应该没有问题。