簡體   English   中英

Android-XML自定義形狀

[英]Android - XML Custom shape

我正在嘗試在xml中完成此形狀: 形狀

我試過的

 <item>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
        <item
            android:drawable="@color/res_pressed"/>
        <item
            android:drawable="@color/res_default"
            android:top="0dp"
            android:right="0dp"
            android:bottom="0dp"
            android:left="15dp"/>
    </layer-list>
</item>

對於黃色形狀,我仍然無法正確地使用圓角和直角。

您需要使用可繪制的shape以便可以添加一個corners標簽。 嘗試

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle">
            <solid android:color="@color/res_pressed" />
            <corners android:topLeft="10dp" android:bottomLeft="10dp" />
        </shape>
    </item>
    <item
        android:top="0dp"
        android:right="0dp"
        android:bottom="0dp"
        android:left="15dp">
        <shape android:shape="rectangle">
            <solid android:color="@color/res_default" />
            <corners android:topRight="10dp" android:bottomRight="10dp" />
        </shape>
    </item>
</layer-list>

這是一種解決方法:

創建top.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="@color/colorPrimaryDark" />
    <corners
        android:radius="15dp"/>
 </shape>

創建bot.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="@color/colorAccent" />
    <corners android:radius="15dp" />

</shape>

所需形狀:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/bot" />
    <item
        android:bottom="0dp"
        android:drawable="@drawable/top"
        android:left="15dp"
        android:right="0dp"
        android:top="0dp"/>
</layer-list>

嘗試一下,與Gabe Sechan帖子相同,但修改很少。

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:width="20dp"
        >
        <shape android:shape="rectangle">
            <solid android:color="@color/yellow"/>
            <corners
                android:bottomLeftRadius="10dp"
                android:bottomRightRadius="0dp"
                android:topLeftRadius="10dp"
                android:topRightRadius="0dp"
                />
        </shape>
    </item>
    <item
        android:bottom="0dp"
        android:left="15dp"
        android:right="0dp"
        android:top="0dp">
        <shape android:shape="rectangle">
            <solid android:color="@color/blue"/>
            <corners
                android:bottomLeftRadius="0dp"
                android:bottomRightRadius="10dp"
                android:topLeftRadius="0dp"
                android:topRightRadius="10dp"/>
        </shape>
    </item>
</layer-list>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM