0

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

图像文件是“png”格式文件,可以从本地应用目录打开。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);
}
4

2 回答 2

2

You should put images inside the res/drawable folder. Then you can get its reference with the R class, or assign it to the ImageView from layout xml file.

于 2010-07-29T21:41:04.730 回答
0

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

于 2010-07-29T23:21:49.863 回答