(shape)自己用XML绘制Button之类的背景

前端之家收集整理的这篇文章主要介绍了(shape)自己用XML绘制Button之类的背景前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

因为项目的需要,有时候,美工的图片好像适应性也不是很好,我们让她们告诉我们那些颜色值就行了。

有一些简单的唇色的按钮有圆角之类的要自己弄


定义一个有四周圆角的矩形,背景色为#c60c39

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <corners android:radius="6dp" />

    <solid android:color="#c60c39" />

</shape>


还可以定义外边的有线(最外面是宽度为1dp的线)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

    <corners android:radius="6dp" />

    <solid android:color="#ff4a7a" />

    <stroke
        android:width="1dp"
        android:color="#c60c39" 
        />

</shape>


胶囊状:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"
    >

    <corners android:radius="15dp" />

    <solid android:color="#ff4a7a" />
	
    <size
        android:height="70dp"
        android:width="30dp" />

</shape>



简单定选中和普通状态的背景(普通状态一定是放最后面的,因为一旦第一个item符合条件的话,就不会往下再找了)
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:drawable="@drawable/youpinhui_bar_rb_pressed" android:state_checked="true"></item>
    <item android:drawable="@drawable/youpinhui_bar_rb"></item>
</selector>


有时候,经常是RadioButton改变的时候,它的字体颜色也要改变:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_checked="true" android:color="@color/last_pressed"></item>
    <item android:color="@color/last_normal"></item>

</selector>

colors.xml(在values文件夹中创建)
<?xml version="1.0" encoding="utf-8"?>
<resources>

    <color name="rg_pressed">#ffffff</color>
    <color name="rg_normal">#c60c39</color>
    <color name="last_pressed">#ff667d</color>
    <color name="last_normal">#b7b7b7</color>
    <color name="text_green">#7ee359</color>
    <color name="text_gray">#b7b7b7</color>

</resources>

现在有一个需求是,让Button可用的时候是一种颜色和字体颜色,不可用是另一种颜色和字体颜色

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/button_red_xml" android:state_enabled="true" android:textColor="@color/white"></item>
    <item android:drawable="@drawable/button_print_barcode_background_xml" android:state_enabled="false" android:textColor="@color/col_btn_print_barcode_text"></item>

</selector>

记住是 enable这个属性,item中像这个 android:textColor是不会提示的,但是Button中有这个属性,所以是可以用的。。

猜你在找的XML相关文章