按钮和图像与文本

时间:2012-05-11 07:24:11

标签: android android-layout button

我想创建一个有图标和文字的按钮。这就是我创造的:

enter image description here

这是xml:

        <Button
            android:id="@+id/call_button"
            android:layout_width="match_parent"
            android:layout_height="0dp"
          android:layout_marginTop="30dp"
            android:background="@drawable/button"
            android:layout_weight="40" 
            android:drawableLeft="@drawable/phone"
            android:text="Call"
            android:textColor="@color/white"
            />

如何将此手机图标移近文字?

4 个答案:

答案 0 :(得分:1)

您是否尝试过提供paddingLeft属性?

<Button android:drawableLeft="@drawable/ic_launcher"
        android:layout_width="100dip"
        android:paddingLeft="10dip"
        android:layout_height="50dip"
        android:text="hello" />

它帮助我将Drawable移向文本。

答案 1 :(得分:1)

这可能会指导您做出安排,

http://developer.android.com/resources/articles/layout-tricks-efficiency.html

代码:

<Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/home_btn_test"
        android:drawableTop="@drawable/home_icon_test"
        android:textColor="#FFFFFF"
        android:id="@+id/ButtonTest"
        android:paddingTop="32sp"
        android:drawablePadding="-15sp"
        android:text="this is text"></Button>

参考:Android: combining text & image on a Button or ImageButton

另请参阅:http://www.mokasocial.com/2010/04/create-a-button-with-an-image-and-text-android/

答案 2 :(得分:0)

我担心你无法设置复合drawable的位置,但你可以在你的图像周围添加一些透明像素,应该这样做:)

答案 3 :(得分:0)

你可以做一件事。根据需要创建图像并将其放入drawable文件夹中。创建图像视图并设置该图像,然后您可以将onclick事件设置为该图像。

ImageView img = (ImageView) findViewById(R.id.myImageId);
img.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
   // your code here
}
});