如何将两个xml可绘制文件应用于android:background属性

时间:2016-06-17 20:02:03

标签: android

<Button
        android:layout_width="120dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="100dp"
        android:background="@drawable/rounded_corner2"
        android:onClick="signin"
        android:text="SIGN IN"
        android:textColor="#fff"
        />

xml文件:custom_bg.xml

 <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
    <shape>
        <solid android:color="@color/colorHighlight"></solid>
    </shape>
</item>
<item>
    <shape>
        <solid android:color="@android:color/white"></solid>
    </shape>
</item>
</selector>

rounded_corner.xml

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

    <!-- view background color -->
    <solid
        android:color="#c62828">
    </solid>

    <!-- view border color and width -->
    <stroke
        android:width="3dp"
        android:color="#ccc">
    </stroke>

    <!-- If you want to add some padding -->
    <padding
        android:left="4dp"
        android:top="4dp"
        android:right="4dp"
        android:bottom="4dp">
    </padding>

    <!-- Here is the corner radius -->
    <corners
        android:radius="10dp">
    </corners>

</shape>

如何在我的Button View中将这两个xml文件用作android:background属性?

2 个答案:

答案 0 :(得分:1)

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/grren_button" />
<item android:drawable="@drawable/tv_background"/>

 <Button
    android:id="@+id/signup_btn"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/password_signup"
    android:layout_marginLeft="10dp"
    android:layout_marginTop="20dp"
    android:layout_marginRight="10dp"
    android:background="@drawable/layer1"
    android:gravity="center"
    android:text="Sign up"
    android:textColor="@color/white"
    android:textSize="15sp"
    >
</Button>

答案 1 :(得分:0)

使用layer-list

combined.xml

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/custom_bg" />
    <item android:drawable="@drawable/rounded_corner"/>
</layer-list>

注意:您还可以通过在<item>标记之间移动所有内容而不是使用android:drawable属性将所有内容合并到一个文件中。