在布局里面设置照片肯定会遇到各种各样的问题,背景、分辨率、大小等等,可能你改了照片的大小在模拟器里看着照片效果正合适,当运行在手机时就会发现照片透明度已经变了,背景变成白色了,上图:
//RadioButton限定图片大小 <RadioButton android:id="@+id/bt1" android:layout_weight="1" android:background="@null" android:button="@null" android:gravity="center_horizontal" android:layout_width="40dp" android:layout_height="40dp" android:text="微信" android:drawableTop="@drawable/wx"/>
//ImageView更改图片大小 <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> <ImageView android:layout_width="40dp" android:layout_height="40dp" android:src="@drawable/wx"/> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> <ImageView android:layout_width="40dp" android:layout_height="40dp" android:scaleType="centerCrop" android:src="@drawable/wx"/> </LinearLayout>
对比图如下,自己体会使用:
scaleType可以取如下值:
CENTER /center 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示
CENTER_CROP 按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽),限定layout_height,layout_width就可以了
CENTER_INSIDE 将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
FIT_CENTER 把图片按比例扩大/缩小到View的宽度,居中显示
FIT_END 把图片按比例扩大/缩小到View的宽度,显示在View的下部分位置
FIT_START 把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置
FIT_XY 把图片不按比例扩大/缩小到View的大小显示
MATRIX 用矩阵来绘制
效果不一样,可以自己试一下来看效果或参考这篇博文点击打开链接