Android:减小Button的大小

时间:2013-10-24 04:14:00

标签: android android-button

我在其中一个布局中使用Button。我希望Button大小与文本/标签大小一样小。

我正在使用以下代码。

<Button 
android:text="@string/cancle_button" 
android:id="@+id/button1" 
android:background="@drawable/back_button" 
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="12sp"
android:textColor="#ffffff"
android:textStyle="bold" />

但我希望Button高度与文字/标签高度相同。每当我减小或增加文本高度时,Button高度保持不变。我该如何解决这个问题?

6 个答案:

答案 0 :(得分:130)

问题提出已近一年了。但我现在遇到了问题并得到了解决方案。 :) 可能会帮助别人。

您可以通过为Button小部件设置android:minHeight="0dp"来实现此目的。

我猜这种行为是因为考虑到最小触摸区域,框架为Button小部件设置了一些默认值(可能是48dp)。

答案 1 :(得分:3)

在这种情况下,使用可以拍摄图像视图,或者在这种情况下拍摄文本视图,这样您就可以拍摄尺寸合适的图像,这样就不会使这些尺寸更加模糊,您可以为图像设置小尺寸最佳方式是你可以拍摄你希望创造其良好方式的图像

答案 2 :(得分:2)

您可以使用相对布局来实现此目的。检查此示例代码

<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="TextView" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/textView1"
        android:layout_alignTop="@id/textView1"
        android:layout_alignBottom="@id/textView1"
        android:text="Button" />

</RelativeLayout>

答案 3 :(得分:1)

您可以通过将按钮高度设置为与标签高度相同的特定值来解决此问题。

<Button 
android:text="CANCEL" 
android:id="@+id/button1" 
android:background="@drawable/back_button" 
android:layout_width="wrap_content"
android:layout_height="20sp"
android:gravity="center"
android:textSize="15sp"
android:textColor="#ffffff"
android:textStyle="bold" />

答案 4 :(得分:0)

您可以通过更改按钮的 layout_weight 来解决此问题,默认情况下该按钮设置为“ 1”

只需将其设置为0,然后只需更改按钮的layout_height即可更改button_height。 这是普通按钮的代码-

    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="0"
        android:text="Button" />

答案 5 :(得分:-1)

        <com.google.android.material.button.MaterialButton
            android:layout_width="36dp"
            android:layout_height="36dp"
            android:layout_marginTop="8dp"
            android:layout_marginBottom="8dp"
            android:background="@drawable/custom_small_button_bg"
            android:drawableLeft="@drawable/ic_minus"
            android:paddingStart="6dp"
            android:paddingLeft="6dp" />