使用drawable作为背景减少Button和LinearLayout

时间:2015-08-02 12:38:07

标签: android android-layout button android-linearlayout text-size

我有一个水平的LinearLayout,里面有9个按钮。 LinearLayout有一个背景

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="9"
android:minHeight="0dp"//Also tried this
android:background="@drawable/llbackground">

<Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:minHeight="0dp"//tried this too
    android:textSize="23sp"
    android:gravity="center_vertical|center_horizontal"
    android:layout_gravity="center" />

在代码中,我为用户提供了减少文本化按钮的机会。 但是按钮本身和LinearLayout不会随着文本大小而减少。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:0)

让我解释一下你的问题。因此,您希望让用户选择文本大小,按钮的文本大小将更改,但按钮的大小不会更改。我是对的吗?

如果这是您的问题,则不应将高度设置为"wrap_content""wrap_content"基本上意味着高度会随着内容而变化。即,当内容(文本)的大小减小时,高度将与内容一样减少,反之亦然。

因此,您应该将height属性设置为常量。例如60dp:

<Button
    android:layout_width="match_parent"
    android:layout_height="60dp"
    android:layout_weight="1"
    android:textSize="23sp"
    android:gravity="center_vertical|center_horizontal"
    android:layout_gravity="center" />

看到变化?

此外,xml注释用<!--comment-->表示,而不是//

答案 1 :(得分:0)

您的方向主要是横向的,因此width应为wrap_content 移除android:layout_weight="1"android:minHeight="0dp"(我想你想要宽度),android:layout_gravity="center"你可以在文本周围填充

相关问题