gpt4 book ai didi

android - 为什么 setLayoutParams 不改变我的 ImageView 的大小?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:12:40 27 4
gpt4 key购买 nike

我过去曾这样做过,但我很沮丧,因为这种方法并不像我预期的那样有效。我有一张图片,我想将其调整为特定尺寸,我正在使用以下代码:

snellen.post(new Runnable() {
@Override
public void run() {
ConstraintLayout.LayoutParams params = (ConstraintLayout.LayoutParams) snellen.getLayoutParams();
params.width = (int)(converted*WIDTH_RATIO);
params.height = (int)(converted*HEIGHT_RATIO);

snellen.setLayoutParams(params);

System.out.println("########################################################################### SNELLEN CHART WIDTH: : " + snellen.getWidth());
System.out.println("########################################################################### SNELLEN CHART HEIGHT: : " + snellen.getHeight());
}
});

我检查了 (converted*WIDTH_RATIO)(converted*HEIGHT_RATIO) 是什么,它们都在 100 左右。我已将它放在一个处理程序中,这样我就可以获得正确的 getLayoutParams(),因为我过去遇到过这个问题。

问题是,当我打印出宽度和高度时,它们不是我在 params.widthparams.height 中设置的值。我在这里做错了什么?

最佳答案

由于您将 snellenLayoutParams 转换为 ConstraintLayout.LayoutParams,因此您的 View 很可能是 约束布局

如果是这种情况,问题可能是您的 View 的尺寸由其约束集定义,因此更改 params.widthparams.height 将无效。

检查 View 的约束并确保它们没有决定 View 的尺寸。

关于android - 为什么 setLayoutParams 不改变我的 ImageView 的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45469901/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com