简单的bitmap处理

来源:互联网 发布:淘宝虚拟物品记录 编辑:程序博客网 时间:2024/05/21 09:44


package com.example.testbitmap;import android.os.Bundle;import android.os.Environment;import android.app.Activity;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.view.Menu;import android.view.WindowManager;import android.widget.ImageView;public class MainActivity extends Activity {private ImageView imageView;int width, height;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);WindowManager manager = (WindowManager) getSystemService(WINDOW_SERVICE);width = manager.getDefaultDisplay().getWidth();height = manager.getDefaultDisplay().getHeight();imageView = (ImageView) findViewById(R.id.iv);// showImage_0();showImage();}private void showImage() {BitmapFactory.Options options = new BitmapFactory.Options();// 不是真的拿到图片 , 只是拿到图片的头信息options.inJustDecodeBounds = true;BitmapFactory.decodeFile(Environment.getExternalStorageDirectory()+ "/big.jpg", options);int h = options.outHeight;int w = options.outWidth;System.out.println("outWidth:" + w);System.out.println("outHeight:" + h);int scalx = w / width;int scaly = h / height;int scale = 1;if (scalx > scaly & scaly >= 1) {scale = scalx;}if (scaly > scalx & scalx >= 1) {scale = scaly;}// 真的获取图片options.inJustDecodeBounds = false;// 采样率options.inSampleSize = scale;Bitmap bitmap = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory()+ "/big.jpg", options);imageView.setImageBitmap(bitmap);}private void showImage_0() {// 不做处理Bitmap bitmap = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory() + "/big.jpg");imageView.setImageBitmap(bitmap);}}

setImageResource setImageDrawable setImageBitmap 

这三种内存占用升序为  bitmap  resource drawable


0 0
原创粉丝点击