在布局文件中设置高和宽为50dp。
<span style="font-size:14px;"> <ImageView
android:id="@+id/right_btn"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_gravity="right|center_vertical"
android:scaleType="fitCenter"
/></span>
在运行加载具体的图片,图片偏大,需要动态调小。
<span style="font-size:14px;"> LayoutParams para= (LayoutParams) topRightBtn.getLayoutParams();
logger.d("chatfragment#initTitleView#height:%d width:%d", para.height,para.width);
para.height = ScreenTools.instance(getActivity()).dip2px(25);
para.width = ScreenTools.instance(getActivity()).dip2px(25);
topRightBtn.setLayoutParams(para);
// topRightBtn.setLayoutParams(new LayoutParams(ScreenTools.instance(getActivity()).dip2px(25),ScreenTools.instance(getActivity()).dip2px(25)));
// topRightBtn.setLayoutParams(new LayoutParams(30,30));
logger.d("chatfragment#initTitleView#height:%d width:%d", para.height,para.width);</span>
注意事项:
1、布局如下设置可以使图片按比率缩放,避免图片被剪裁。
<span style="font-size:14px;">android:scaleType="fitCenter"</span>
2、para.height的值单位为px,即像素,所以需要进行转换。
<span style="font-size:14px;">para.height = ScreenTools.instance(getActivity()).dip2px(25);</span>
logger语句第一次打印的值为138,即138px,对应50dp。
第二次打印的值为69,即69px,对应25dp。