Android宽度填充屏幕 宽高相等的View

写一个宽度到边,高度与宽度相等的ImageView怎么实现

暂时考虑以下几种实现方式:

1 百分比布局

PercentRelativeLayout 设置宽度100% 宽高比100%


2 ConstraintLayout 约束布局
设置宽度match_parent 高度0dp 宽高比1:1 两种写法, 如下

 

3 自定义ImgeView 重写onMeasure()方法

设置宽度match_parent 高度 wrap_content 或0dp ...

 @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        super.onMeasure(widthMeasureSpec, widthMeasureSpec);
    }

4
通过java代码动态设置ImageView

PercentRelativeLayout 的属性


app:layout_widthPercent
app:layout_heightPercent


app:layout_marginLeftPercent
app:layout_marginTopPercent
app:layout_marginRightPercent
app:layout_marginBottomPercent

app:layout_marginStartPercent
app:layout_marginEndPercent

android:layout_width="300dp"
app:layout_aspectRatio 

ConstraintLayout 的属性

引用别人的文章吧

你可能感兴趣的:(Android宽度填充屏幕 宽高相等的View)