自定义设计一个简单的android按钮 自定义设计按钮

自定义设计一个简单的android按钮 自定义设计按钮,android,android-button,Android,Android Button,我有一个简单的按钮 活动\u main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:padd

我有一个简单的按钮

活动\u main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="Button" />

</RelativeLayout>

我如何自定义设计此按钮,如下所示

我正在尝试执行的规范::

  • 黑色的背景色
  • 位于按钮底部的按钮文本,如中所示 身材

关于使用重力定位文本的任何想法都是正确的。具体而言,您可能需要:

    android:gravity="bottom|center_horizontal"
对于黑色背景,可以使用背景xml属性:

    android:background="@drawable/btn_black"
当然,您需要在可绘制文件夹中提供一个名为btn_black.png的png

如果你想让按钮看起来像被按下了一样,你需要为每种状态(按下、正常、聚焦等)设置不同的可拖动项。您需要将按钮背景设置为描述如下状态的xml文件:

    <?xml version="1.0" encoding="utf-8"?> 
      <selector xmlns:android="http://schemas.android.com/apk/res/android">   
      <item android:state_focused="true" android:drawable="@drawable/btn_black_normal"/> 
      <item android:state_pressed="true" android:state_enabled="false"
            android:drawable="@drawable/btn_black_pressed" />
      <item android:drawable="@drawable/btn_black_normal"/> 
    </selector>


您也可以更改上面的重力,因为文本是按钮的内容。另外,android:background=“@color/black”也可以。但是你应该在values文件夹中创建颜色。