Android:无法在ImageView中显示png图像

时间:2010-07-29 21:12:29

标签: android imageview drawable

我正在编写一个包含ImageView的Android应用。要包含在视图中的图像驻留在模拟器的本地app目录中。图像未显示在视图中。下面给出了用于显示图像的相关XML和方法。

图像文件是“png”格式文件,可以从本地app目录打开。 getFilesDir()返回的路径包括完整路径“/data/data/net.vitalrecord.android/files”。此路径指定在开发系统上不存在,但在使用DDMS文件资源管理器时确实存在。

非常感谢任何有关此问题的帮助。

感谢。

布局XML:

<AbsoluteLayout>
......

<ImageView
 android:id="@+id/picture"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_x="100px"
 android:layout_y="100px"/>
</AbsoluteLayout>

方法: public void checkFilesExists(){

.....

try {
 Context context = getApplicationContext();
 FILENAME = getString(R.string.MedicalImage);
 fis = openFileInput(FILENAME);
 int size = fis.available();
 byte[] buffer = new byte[size];
 fis.read(buffer);
 fis.close();
 setContentView(R.layout.medtogoimage);
    ImageView iv = (ImageView)findViewById(R.id.picture);
    String imagePath = context.getFilesDir() + "/" + FILENAME;
    Drawable d = Drawable.createFromPath(imagePath);
    iv.setImageDrawable(d);
    medtogo.setbMedicalImageFileExists(true);
} catch (IOException e) {
  medtogo.setbMedicalImageFileExists(false);
}

2 个答案:

答案 0 :(得分:2)

您应该将图像放在res / drawable文件夹中。然后,您可以使用R类获取其引用,或者将其从布局xml文件分配给ImageView。

答案 1 :(得分:0)

您是否尝试将模式设置为MODE_WORLD_READABLE?