以编程方式将imageview的高度设置为match_parent

问题描述 投票:63回答:7

我需要以编程方式将imageview的高度设置为match_parent。如果它是一个固定的高度,我知道如何设置。

但我如何将其设置为match_parent?

编辑:

实际上父布局的高度是动态的。所以我需要将imageview的高度设为父级的高度。

android height imageview
7个回答
-8
投票

启动LayoutParams。

指定父级的宽度和高度,并将其传递给imageview的setLayoutParams方法


213
投票
imageView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));

46
投票
imageView.getLayoutParams().height= ViewGroup.LayoutParams.MATCH_PARENT;

15
投票
imageView.setLayoutParams
    (new ViewGroup.MarginLayoutParams
        (width, ViewGroup.LayoutParams.MATCH_PARENT));

布局参数的类型取决于父视图组。如果你选错了它会导致异常。


3
投票

您可以尝试这个想要与父母匹配的情况。尺寸排列是宽度和高度的顺序

web = new WebView(this);
        web.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));

2
投票

对于Kotlin用户

val params = mImageView?.layoutParams as FrameLayout.LayoutParams
params.width = FrameLayout.LayoutParams.MATCH_PARENT
params.height = FrameLayout.LayoutParams.MATCH_PARENT
mImageView?.layoutParams = params

在这里我使用FrameLayout.LayoutParams,因为我的观点(ImageView)的父母是FrameLayout


1
投票

您可以使用MATCH_PARENT常量或其数值-1。

© www.soinside.com 2019 - 2024. All rights reserved.