gpt4 book ai didi

android - 增加 TextView 的 TextSize 然后减小它不会返回到 View 元素的正常高度

转载 作者:太空狗 更新时间:2023-10-29 13:29:40 24 4
gpt4 key购买 nike

我是 Android 的新手,如果没有这个论坛,我永远不会达到现在的水平。这是我的问题:我正在使用一个简单的 LinearLayout 和一个垂直位于 TextView 上方的 ImageView。我的目标是显示一系列屏幕,顶部是图像,底部是简短的文本标题。文本是可换行的,图像应该缩放以填充剩余的可用垂直空间。

如果我保持文本字体大小不变(我通常使用 .setTextSize(35)),一切正常。问题是当我显示空图像时,我选择放大文本 (.setTextSize(120))。这行得通..但是当我接下来显示后续图像并将文本大小恢复为 35 时,图像底部和现在较小的文本区域顶部之间有一个很大的未填充间隙。

似乎正在发生的事情是,使用较大的文本大小曾经以某种方式永久增加了 TextView 的最小高度。我试过清除 TextView (.setText("").. 将大小更改为非常小 (.setTextSize(12)... 并无休止地摆弄 LinearLayout 参数(重量,重力)...无济于事。欢迎任何有关如何解决此问题的想法。

<ImageView android:id="@+id/img" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_weight="1.0" android:layout_gravity="fill_vertical" android:contentDescription="@string/desc" />

<TextView android:id="@+id/caption" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_weight="0" android:layout_gravity="bottom"
android:gravity="center"/>

最佳答案

***发帖后发现的解决办法:原来这是Android 3.1以来的已知bug。参见 Android:TextView height doesn't change after shrinking the font size .

在此处列出的推荐解决方案/解决方法中,我喜欢的是每次设置文本时执行以下操作:

setText("我是一个文本",TextView.BufferType.SPANANABLE);

或者在调整文本大小后执行:setText(getText(),TextView.BufferType.SPANANABLE);

关于android - 增加 TextView 的 TextSize 然后减小它不会返回到 View 元素的正常高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17160588/

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