为背景添加圆角边框

若我们需要在应用程序中添加一个带圆角边框的灰色Button,且不能使用图片,我们应如何办,效果如下:

为背景添加圆角边框_第1张图片

首先,我们需在布局文件中添加一个Button控件,XML文件如下:


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:background="@drawable/button_rounded_background"
        android:padding="10dp"
        android:text="Hello World, MainActivity!"
        android:textColor="#000000"/>

RelativeLayout>

由以上文件可知,我们并没有使用任何特殊属性。我们只是为背景属性指定了drawable值,但是这个值不是一个图片,而是一个XML文件。在drawable值指定的XML文件中有一个ShapeDrawable对象,该对象是一个可绘制对象,可以用来绘制各种原始形状,例如方块等。ShapeDrawable对应的XML文件如下:


<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="#AAAAAA"/>
    <corners android:radius="15dp"/>
shape>

我们定义solid标签为Button指定了要填充的颜色值,使用corners标签将边框指定为圆角。

ShapeDrawable是一个为UI控件添加特效的好工具,这个技巧适用于那些可以添加背景的控件。

你可能感兴趣的:(高质量Android)