1

XML 代码:

 <Button
    android:id="@+id/shareProduct"
    android:layout_width="200dp"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dp"
    android:background="@drawable/selector_dark_blue_border_light_blue_solid"
    android:drawableLeft="@drawable/ic_fb"
    android:drawablePadding="10dp"
    android:gravity="center"
    android:paddingBottom="6dp"
    android:paddingTop="6dp"
    android:text="Facebook"
    android:textColor="@color/white"
    android:textSize="16sp" />

我得到什么:

在此处输入图像描述

我想要的是:

在此处输入图像描述

我想通过给gravity="center"甚至drawable来中心。

4

3 回答 3

1

将可绘制填充减少到更小 android:drawablePadding="1dp"或使用android:padding="1dp"

于 2013-10-30T14:04:40.470 回答
0

尝试使用此替代解决方案,尝试使用填充,除非您可以:

<Button
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:drawableLeft="@drawable/my_btn_icon"
 android:gravity="left|center_vertical" />
于 2013-10-30T14:07:13.713 回答
0

像这样试试

<Button
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:drawableLeft="@drawable/ic_launcher"
        android:paddingLeft="80dp"
        android:gravity="left|center_vertical" 
        android:text="Facebook"/>

输出:

在此处输入图像描述

对于多屏幕支持,您可以使用尺寸(调整paddingLeft),以便所有密度设备的外观和感觉都相同。

希望这对您有所帮助。

于 2013-10-30T15:08:29.353 回答