android中如何动态修改ImageView中图片的大小 比如说点击该图片后图片能变大

如题所述

使用位图(Bitmap)再重新绘制遍

//原位图

Bitmap btm1 = BitmapFactory.decodeResource(Main.this.getResources(), R.drawable.hh);

BitmapDrawable bd1=BitmapDrawable(btm1);

imageView.setBackgroundDrawable(bd1);

放大后 滑动时计算 图片的边是否在屏幕外,如果在屏幕外就可移动,比如 向上滑动,是想看图片下面的部分,此时计算图片的底边是否在屏幕外,如果是,就可以向上移动图片。

Scaletype的设置的方式包括:

1、在layout xml中定义android:scaleType="CENTER"

2、或在代码中调用imageView.setScaleType(ImageView.ScaleType.CENTER);

扩展资料:

根据位深度,可将位图分为1、4、8、16、24及32位图像等。每个像素使用的信息位数越多,可用的颜色就越多,颜色表现就越逼真,相应的数据量越大。

例如,位深度为 1 的像素位图只有两个可能的值(黑色和白色),所以又称为二值位图。位深度为 8 的图像有 2^8(即 256)个可能的值。位深度为 8 的灰度模式图像有 256 个可能的灰色值。

RGB图像由三个颜色通道组成。8 位/通道的 RGB 图像中的每个通道有 256 个可能的值,这意味着该图像有 1600 万个以上可能的颜色值。

有时将带有 8 位/通道 (bpc) 的 RGB 图像称作 24 位图像(8 位 x 3 通道 = 24 位数据/像素)。通常将使用24位RGB组合数据位表示的的位图称为真彩色位图。

参考资料来源:百度百科-Bitmap

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-02-01
使用位图(Bitmap)再重新绘制一遍就可以了。

//原位图
Bitmap btm1 = BitmapFactory.decodeResource(Main.this.getResources(), R.drawable.hh);
BitmapDrawable bd1=BitmapDrawable(btm1);
imageView.setBackgroundDrawable(bd1);
//点击后变大的位图:
Bitmap btm2=Bitmap.createScaledBitmap(btm1, 40, 50, false); //这里你可以自定义它的大小
BitmapDrawable bd2=BitmapDrawable(btm2);
imageView.setBackgroundDrawable(bd2);本回答被网友采纳
第2个回答  2012-02-01
1.imageview 有个属性scaleType,把它设置为矩阵(matrix),然后操作矩阵可以放大缩小
2.操作LayoutParams,直接改变控件的大小
第3个回答  2015-07-17
1、这个图片大小是通过触摸屏实现的;
2、操作需俩手指配合;
3、具体步骤:放大:俩手指处靠近状态,同时接触屏幕中心,然后俩手指同时从中心往外划动即可;缩小,反之;
第4个回答  推荐于2018-05-07
使用位图(Bitmap)再重新绘制遍

//原位图
Bitmap btm1 = BitmapFactory.decodeResource(Main.this.getResources(), R.drawable.hh);
BitmapDrawable bd1=BitmapDrawable(btm1);
imageView.setBackgroundDrawable(bd1);
//点击变位图:
Bitmap btm2=Bitmap.createScaledBitmap(btm1, 40, 50, false); //自定义
BitmapDrawable bd2=BitmapDrawable(btm2);
imageView.setBackgroundDrawable(bd2);本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网