我对 Android 还很陌生,如果没有这个论坛,我永远不会走到现在这样。这是我的问题:我正在使用一个简单的 LinearLayout,其 ImageView 垂直位于 TextView 上方。我的目标是显示一系列屏幕,顶部有一个图像,底部有一个简短的文本标题。文本是可换行的,并且应该缩放图像以填充剩余的可用垂直空间。
如果我保持文本字体大小不变(我通常使用 .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"/>