document.write("");

android ImageView 设定宽度铺满,高度自定义

问题:imageView 宽度铺满,高度自定义,会出现上下留白的现象(一般比例的还好)

解决:

1
2
3
4
5
6
<xxx.xxx.xxx.xxx.FullWidthImageView
    android:id="@+id/iv_image_corp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:src="@drawable/pic_icon">
</cxxx.xxx.xxx.xxx.FullWidthImageView>

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.support.v7.widget.AppCompatImageView;
public class FullWidthImageView extends AppCompatImageView {
    public FullWidthImageView(Context context) {
        super(context);
    }
 
    public FullWidthImageView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }
 
    public FullWidthImageView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }
 
    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        Drawable drawable = getDrawable();
        if (drawable != null) {
            int width = MeasureSpec.getSize(widthMeasureSpec);
            int height = Math.round((float) width / (float) drawable.getIntrinsicWidth() * drawable.getIntrinsicHeight());
            setMeasuredDimension(width, height);
        } else {
            super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        }
    }
}

  

posted @   人间春风意  阅读(358)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示

距今时间:
1025天8.00 小时 52.71 分钟

当前新增阅读数:140327