总结-Android基础篇1-shape的使用

来源:互联网 发布:阿里云rds使用 编辑:程序博客网 时间:2024/06/04 23:20

在Android开发中,为了界面的友好,通常需要将一些TextView和Button等控件在空闲和点击等不同状态下显示不同的用户界面,大多数时候都会使用到shape进行控件的样式处理,并且配合selector控件处理点击状态的样式显示.

一.首先是为TextView等控件添加背景


如图,需要在xml文件的TextView控件设置背景.

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" ><!-- 控件形状设置 -->

<!-- 填充的颜色-绿色 -->
    <solid android:color="#0f0" />
<!-- 圆角半径 -->
    <corners android:radius="6dp" />
<!-- 内容的间隔 -->
    <padding
        android:bottom="32dp"
        android:left="4dp"
        android:right="16dp"
        android:top="8dp" />
<!-- 边框设置 -->
    <stroke
        android:width="1dp"
        android:color="#000" />
    <!-- 自定义控件大小 -->
    <!-- <size 
        android:width=""
        android:height=""/> -->
    <!-- 背景渐变色 -->
    <!-- <gradient 
        android:startColor=""
        android:centerColor=""
        android:endColor=""/> -->

</shape>

大家可以根据自己的需求进行修改配置.

二.设置点击效果,需要和selector一起使用

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <!-- 按钮按下时的效果 -->
    <item android:state_pressed="true"><shape android:shape="rectangle">
            <corners android:radius="4dp" />
            <solid android:color="#f00" />
            <stroke android:width="2dp" android:color="#00f" />
        </shape>

    </item>
    <!-- 正常状态 -->
    <item><shape android:shape="rectangle">
            <solid android:color="#0f0" />
            <corners android:radius="6dp" />
            <padding android:bottom="4dp" android:left="4dp" android:right="4dp" android:top="4dp" />
            <stroke android:width="1dp" android:color="#000" />
        </shape>

    </item>
</selector>

正常状态

点击状态效果

上面的两个例子只是一些简单的背景效果,大家可以通过试试其他的属性进行更多的配置,使自己的控件更加炫丽.

三.圆的制作


<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"
    android:useLevel="false">
    
    <solid android:color="#ff0"/>
    <stroke android:width="2dp"
        android:color="#f00"/>
    
    <size android:width="50dp"
        android:height="50dp"/>
    
</shape>

另外TextView的文字也可以设置随点击事件进行颜色的改变.

0 0
原创粉丝点击