我正在创建一个Android应用,我希望全屏显示图像。图像存储在Android手机的内部存储器中,并且要显示的图像每次都可以变化。在该活动的布局XML文件中,我添加了一个图像视图标记,如下所示:
<ImageView
android:id="@+id/imageView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/android" />
我应该为android:src
输入什么?任何帮助&amp;建议将不胜感激。
答案 0 :(得分:3)
删除行
android:src="@drawable/android"
来自XML布局。由于图像可能每次都有所不同,因此您需要使用
File file = new File("/sdcard/Images/test_image.jpg");
if(imgFile.exists()){
Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath());
ImageView image = (ImageView) findViewById(R.id.imageview1);
image.setImageBitmap(bitmap);
}
答案 1 :(得分:2)
尝试以下代码,从存储在SD卡中的文件中设置位图图像。
File imgFile = new File("/sdcard/Images/test_image.jpg");
if(imgFile.exists()){
Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
ImageView myImage = (ImageView) findViewById(R.id.imageviewTest);
myImage.setImageBitmap(myBitmap);
}
这在运行时起作用
答案 2 :(得分:1)
您可以在运行时执行此操作,试试这个:
String pathName = "/sdcard/abc.png";
Resources res = getResources();
Bitmap bitmap = BitmapFactory.decodeFile(pathName);
BitmapDrawable bd = new BitmapDrawable(res, bitmap);
ImageView view = (ImageView) findViewById(R.id.container);
view.setBackgroundDrawable(bd);