1. 程式人生 > >android 實現半個圓角長方形

android 實現半個圓角長方形

最近專案上用到了一個需求,實現半個圓角長方形,形狀如下:


沒做過,不好整啊,github上溜達一圈先...........沒有,好吧,自己動手豐衣足食。

一開始的想法是,實現一個圓角長方形,然後在佈局的時候只顯示半個,但是效果不怎麼樣。後來想到實現單邊框的方法,結合圓角矩形的實現方法,輕鬆搞定,廢話不多說,上程式碼:

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

    <!-- 邊框的顏色及形狀 -->
    <item>
        <shape android:shape="rectangle">
            <solid android:color="@color/colorBottomBorder"/>
            <corners android:topLeftRadius="20dp"
                     android:bottomLeftRadius="20dp"/>
        </shape>
    </item>
    <!--  背景的顏色及形狀  -->
    <item android:left="2dp" android:top="2dp" android:bottom="2dp">
        <shape android:shape="rectangle">
            <solid android:color="@color/colorWhite"/>
            <corners android:bottomLeftRadius="20dp"
                     android:topLeftRadius="20dp"/>
        </shape>
    </item>


</layer-list>

裡面的圓角大小及邊框的寬度都需要根據自己的專案需求更改。