SD 카드 에 있 는 이미지 자원 을 사용 하 는 ImageView

1835 단어 자바androidOS
이것 은 주로 Bitmap 와 Drawable 간 의 전환 과 SD 카드 경 로 를 가 져 오 는 문제 입 니 다.

package cn.com;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;

import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;
import android.os.Bundle;
import android.os.Environment;
import android.widget.ImageView;

public class UserSdCardImage extends Activity {
	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		ImageView iv = (ImageView) findViewById(R.id.image);

		showpic(iv);
	}

	private void showpic(ImageView iv) {
		File sdcardDir = Environment.getExternalStorageDirectory();

		String path = sdcardDir.getParent() + sdcardDir.getName();
		System.out.println("________________________" + path);

		File pic = new File(path + java.io.File.separator + "88.jpg");

		FileInputStream is = null;
		try {
			is = new FileInputStream(pic);
			Bitmap bm = BitmapFactory.decodeStream(is, null, null);

			int w = bm.getWidth();
			int h = bm.getHeight();

			double s = 0.6;

			float sw = 1, sh = 1;
			sw = (float) (sw * s);
			sh = (float) (sh * s);
			Matrix mx = new Matrix();
			mx.postScale(sw, sh);

			Bitmap rp = Bitmap.createBitmap(bm, 0, 0, w, h, mx, true);
			iv.setImageBitmap(rp);

		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}
	}
}

좋은 웹페이지 즐겨찾기