-2

如何将文本和图像与同一个按钮对齐?我想做这样的形象:

在此处输入图像描述

但我的按钮看起来像这样,文本与图像重叠:

在此处输入图像描述

这是我下面的代码。如何在同一个按钮中的文本和图像之间留出空间?

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="15dp"
    android:layout_weight="0"
    android:weightSum="1"
    android:orientation="horizontal" >

       <Button android:id="@+id/btnUtilitybillpayments"
            style="?android:attr/buttonStyleSmall"
            android:layout_height="wrap_content"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:drawableLeft="@drawable/handshake"
            android:layout_marginRight="55dip"
            android:layout_marginLeft="55dip"
            android:drawablePadding="-25dp"
            android:paddingLeft="10dip"
            android:paddingRight="50dip"
            android:layout_marginTop="10dip"
            android:background="@drawable/curvedplanebutton"
            android:textColor="@drawable/button_text_color"
            android:text="Utility Bills Payment"/>
</LinearLayout>
4

4 回答 4

1

我认为您已将按钮设置为 Complex,

只需使用下面的代码,让我知道会发生什么..

<Button   android:id="@+id/btnUtilitybillpayments"
             style="?android:attr/buttonStyleSmall"
             android:layout_height="wrap_content"
             android:layout_width="0dp"
             android:layout_weight="1"
             android:layout_marginRight="55dip"
             android:layout_marginLeft="55dip"
             android:drawableLeft="@drawable/handshake"
             android:layout_marginTop="10dip"
             android:gravity="left"
             android:paddingLeft="20dip"
             android:background="@drawable/curvedplanebutton"
             android:textColor="@drawable/button_text_color"
             android:text="Utility Bills Payment"/>

因为我也怀疑你的按钮的 layout_margin 属性。如果它不起作用,请尝试删除

 android:layout_marginRight="55dip"
 android:layout_marginLeft="55dip"
于 2013-01-11T07:41:30.647 回答
1

尝试这个

<Button
 android:id="@+id/button1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:drawableLeft="@android:drawable/btn_star_big_on"
 android:text="Drawable left">
Button>

For more info go to this link

http://izvornikod.com/Blog/tabid/82/EntryId/8/Creating-Android-button-with-image-and-text-using-relative-layout.aspx

于 2013-01-11T07:48:01.707 回答
0

像这样的东西。

        <Button
            android:id="@+id/btnUtilitybillpayments"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="0dp"
            android:layout_height="wrap_content"

            android:layout_weight="1"
            android:background="@drawable/curvedplanebutton"
            android:drawableLeft="@drawable/handshake"
            android:gravity="left|center"
            android:text="Utility Bills Payment"
            android:textColor="@drawable/button_text_color" />
于 2013-01-11T08:03:42.633 回答
0

更合适的方法是将按钮制作为 9patch 图像。这样,您可以通过修补右侧和底部来定义文本的位置。而且不需要这么复杂的按钮。

你可以去这里了解更多信息——

http://developer.android.com/tools/help/draw9patch.html

于 2013-01-11T08:10:37.283 回答