例如在SD卡根目录下有个JPG文件DSC0001.jpg。main.xml文件如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent"><ImageViewandroid:id="@+id/jpgview"android:layout_width="fill_parent"android:layout_height="fill_parent"/></LinearLayout>JAVA代码如下:public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);ImageView jpgView = (ImageView)findViewById(R.id.jpgview);String myJpgPath = "/sdcard/DSC_0001.JPG";BitmapFactory.Options options = new BitmapFactory.Options();options.inSampleSize = 2;Bitmap bm = BitmapFactory.decodeFile(myJpgPath, options);jpgView.setImageBitmap(bm);
ps:
1)如果是imageview的话,他会等比例缩放图片,而用imagebutton的话就不会等比例缩放了,而是会按照xml给的大小进行【剪切】显示,效果见附件
这个是setImageViewBitmap的效果,ImageView是等比例缩放,ImageButton是截取显示。
这个是使用背景显示setImageViewBackgroundBitmap显示的效果,ImageView和ImageButton显示效果相同
2)widget中使用remoteViews.setImageViewBitmap(R.id.imageview, bm);来显示
this.getWindowManager().getDefaultDisplay().getWidth();//获取屏幕宽度和高度