2013-01-11 64 views
-2

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

enter image description here

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

enter image description here

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

<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> 
+1

因为你给的Android,这是发生了:layout_marginRight = “55dip”。 –

+0

要么删除'android:layout_marginRight =“55dip”'或最小化从右侧的边距'android:layout_marginRight =“15dip”' –

+0

如果您使用的是静态文本,那么您可以选择使用预定义文本的图像, t需要对齐文字 – juned

回答

1

我觉得你做你的按钮到复杂,

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

<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" 
+0

ur代码删除图像左侧的空间看到这个http://imgur.com/oFwZ2只在图像和tet之间留出空间,但从图像的左侧空间删除 –

+0

你也想设置按钮的其他文字的重心会进入中心,并在极值左边画出。 –

+0

现在把'android:drawablePadding =“20dip”'或'android:paddingLeft =“20dip”'。 – user370305

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" /> 
+0

这个工作现在这条线android:gravity =“left | center” –

+0

是啊所以重力使得按钮内的内容按此安排。 –