- public void onCreate(Bundle icicle) {
- super.onCreate(icicle);
- LinearLayout linLayout = new LinearLayout(this);
- // 加载需要操作的图片,这里是eoeAndroid的logo图片
- Bitmap bitmapOrg = BitmapFactory.decodeResource(getResources(),
- R.drawable.icon);
- // 获取这个图片的宽和高
- int width = bitmapOrg.getWidth();
- int height = bitmapOrg.getHeight();
- // 定义预转换成的图片的宽度和高度
- int newWidth = 200;
- int newHeight = 200;
- // 计算缩放率,新尺寸除原始尺寸
- float scaleWidth = ((float) newWidth) / width;
- float scaleHeight = ((float) newHeight) / height;
- // 创建操作图片用的matrix对象
- Matrix matrix = new Matrix();
- // 缩放图片动作
- matrix.postScale(scaleWidth, scaleHeight);
- // 旋转图片 动作
- matrix.postRotate(45);
- // 创建新的图片
- Bitmap resizedBitmap = Bitmap.createBitmap(bitmapOrg, 0, 0, width,
- height, matrix, true);
- // 将上面创建的Bitmap转换成Drawable对象,使得其可以使用在ImageView, ImageButton中
- BitmapDrawable bmd = new BitmapDrawable(resizedBitmap);
- // 创建一个ImageView
- ImageView imageView = new ImageView(this);
- // 设置ImageView的图片为上面转换的图片
- imageView.setImageDrawable(bmd);
- // 将图片居中显示
- imageView.setScaleType(ScaleType.CENTER);
- // 将ImageView添加到布局模板中
- linLayout.addView(imageView, new LinearLayout.LayoutParams(
- LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
- // 设置为本activity的模板
- setContentView(linLayout);
- }