颜色从线性布局的指定区域出来

时间:2019-07-15 22:33:09

标签: android android-studio android-fragments

Refer the image to understand it我一直在构建带有圆角的线性布局。分配给角的半径为15 dp。白色仍然显示出角落。附有图片以寻求帮助。

Main XML File:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/bottom_menu_shape"
>
</LinearLayout>


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

            <corners
                android:topLeftRadius="25dp"
                android:topRightRadius="25dp"
                />
            <stroke android:width="1dip" android:color="#00249C"/>

        </shape>
    </item>
</selector>

该代码正常工作,但是白色正以矩形形状出现。 有什么办法可以使白色恰好位于布局的圆角内。

Expecting: White color inside the rounded layout
Actual Output: White color in rectangle shape coming out of the layout.

1 个答案:

答案 0 :(得分:0)

您可以通过在圆角矩形后面放置另一层并将其设置为所需的任何颜色来使用层列表。我在这里使用深红色进行演示

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

<item>

    <shape
        android:shape="rectangle"
        android:tint="@android:color/holo_red_dark">
    </shape>

</item>


<item >
    <shape android:shape="rectangle"
        android:tint="@android:color/white">

        <corners
            android:topLeftRadius="25dp"
            android:topRightRadius="25dp"
            />
        <stroke android:width="1dip" android:color="#00249C"/>

    </shape>
</item>

enter image description here