Android中缩列图的使用

import android.app.Activity;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.widget.ImageView;


public class MainActivity extends Activity {
private ImageView imageView;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = (ImageView) findViewById(R.id.imageView);
imageView.setImageBitmap(decodeBitmap(getResources(), R.drawable.a, 50,
50));
}


// 得到缩放比
public int getSampleSize(BitmapFactory.Options options, int requestWidth,
int requestHeight) {
// 原图片的宽高
int width = options.outWidth;
int height = options.outHeight;
int sampleSize = 1;
if (width > requestWidth || height > requestHeight) {
if (width > height) {
sampleSize = Math.round((float) height / (float) (requestHeight)) ;
} else {
sampleSize = Math.round((float) width / (float) (requestWidth));
}
}
}
return sampleSize;
}


public Bitmap decodeBitmap(Resources res, int resid, int requestWidth,
int requestHeight) {
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeResource(res, resid, options);
options.inSampleSize = getSampleSize(options, requestWidth,
requestHeight);
options.inJustDecodeBounds = false;
return BitmapFactory.decodeResource(res, resid, options);
}

}

布局文件仅包含一个ImageView,在此不再列出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值