33

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高度保持不变。我应该如何解决这个问题?

4

6 回答 6

179

问这个问题已经快一年了。但我现在面临这个问题并得到了解决方案。:) 可能会帮助某人。

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

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

于 2014-10-18T17:34:52.493 回答
3

在这种情况下使用可以拍摄图像视图,或者如果您在这种情况下拍摄文本视图,那么您可以拍摄具有适当尺寸的图像,这样它就不会通过这些措施变得更蓝,您可以为图像设置小尺寸最好的方法是您可以使用具有您想要创建的好方法的大小的图像

于 2013-10-24T04:23:38.717 回答
2

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

<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" />
于 2013-10-24T04:26:17.650 回答
1

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

<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>
于 2014-10-21T07:17:44.353 回答
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" />
于 2020-11-12T06:57:46.413 回答
-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" />
于 2020-10-20T04:15:24.183 回答