ImageView的src和background的区别、padding的使用技巧、ImageView根据屏幕对缩放

来源:互联网 发布:复利的威力 知乎 编辑:程序博客网 时间:2024/05/16 04:21

一、ImageView中XML属性src和background的区别:

background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸 。src是图片内容(前景),bg是背景,可以同时使用。

此外: scaleType只对src起作用;bg可设置透明度,比如在ImageButton中就可以用android:scaleType控制图片的缩放方式


二、padding的使用技巧:

如果ImageView 只设置了background 则padding不生效,只设置src的的padding就会生效。同时设置background和src 则padding不生效。

示例代码:

<ImageView    android:id="@+id/buy"    android:layout_width="42dp"    android:layout_height="42dp"    android:layout_centerVertical="true"    android:padding="10dp"    android:layout_marginLeft="22.5dp"    android:src="@mipmap/u66"    />

三、ImageView如何根据屏幕不同进行缩放

private ImageView mine_headerimg, 
mine_headerimg = (ImageView) mContentView.findViewById(R.id.mine_headerimg);

//根据屏幕进行比例缩放ViewGroup.LayoutParams layoutParams2 = mine_headerimg.getLayoutParams();int screenWidthPixels = DensityUtil.getScreenWidthPixels(getActivity());//代码如下layoutParams2.height = 1412 * screenWidthPixels / 3000;mine_headerimg.setLayoutParams(layoutParams2);

/** * 获取屏幕宽度 */public static int getScreenWidthPixels(Activity context) {    DisplayMetrics metric = new DisplayMetrics();    context.getWindowManager().getDefaultDisplay().getMetrics(metric);    return metric.widthPixels;}

简单说明下,这里是根据mine_headerimg里图片的大小 长度3000 高度1412(16:9)。这样图片就会根据不同的屏幕分辨率来显示不同的尺寸。

3 0
原创粉丝点击