2

这就是我想出的。

<?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/grey" />

            <padding
                android:bottom="1dp" />
            <corners 
                android:radius="0dp"/> 
        </shape>
    </item>
    <item>
        <shape android:shape="rectangle" >
            <solid android:color="@color/white" />
            <corners 
                android:radius="1dp" 
                android:bottomRightRadius="0dp" 
                android:bottomLeftRadius="0dp" 
                android:topLeftRadius="5dp" 
                android:topRightRadius="5dp"/> 
        </shape>
    </item>
</layer-list>

这是可行的,但是底部半径显示了我在其上放置的任何值。

其实在只需要topLeftRadius使它看起来像这样

    <corners  
        android:bottomRightRadius="0dp" 
        android:bottomLeftRadius="0dp" 
        android:topLeftRadius="5dp" 
        android:topRightRadius="0dp"/> 

在此处输入图像描述

4

4 回答 4

7

我有同样的问题,试试看。它对我有用。我只是将android:top="10dp"添加到第二项。所以,它会导致只圆顶角。

<?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/dialog_title_bar_blue"/>

            <corners
                android:topLeftRadius="10dp"
                android:topRightRadius="10dp"/>
        </shape>
    </item>
    <item
        android:top="10dp">
        <shape android:shape="rectangle">
            <solid
                android:color="@color/dialog_title_bar_blue"/>
        </shape>
    </item>
</layer-list>
于 2013-12-10T05:06:16.863 回答
0

您好,这是您的解决方案“干杯 :)”

首先将此布局添加为背景。然后在下面添加一个视图作为直线。

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

    <!-- you can use any color you want I used here gray color -->
    <solid android:color="#ffffff" />

    <corners
        android:topLeftRadius="3dp"
        android:topRightRadius="3dp" />

</shape>

和视图

<View
    android:layout_width="fill_parent"
    android:layout_height="1dp"
    android:background="@android:color/black"/>
于 2013-09-27T04:46:31.460 回答
0

<item>
    <shape>
        <corners
            android:bottomLeftRadius="0.1dp"
            android:bottomRightRadius="0.1dp"
            android:topLeftRadius="10dp"
            android:topRightRadius="10dp" />

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

        <stroke
            android:width="3dp"
            android:color="@android:color/black" />
    </shape>
</item>
<item android:bottom="3dp">
    <shape>
        <corners
            android:bottomLeftRadius="0.1dp"
            android:bottomRightRadius="0.1dp"
            android:topLeftRadius="10dp"
            android:topRightRadius="10dp" />

        <solid android:color="#800000" />
    </shape>
</item>

于 2013-09-27T05:59:08.110 回答
0

问题:这里 提到了一个错误

解决方案: api12中的bug已经解决。

所以通过提供适当的资源来尝试一下。创建两个同名的 xml 文件,并将其中一个放入drawable文件夹,另一个放入drawable-v12文件夹。

->drawable文件夹中:

<?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/grey" />

        <padding
            android:bottom="1dp" />
        <corners 
            android:radius="0dp"/> 
    </shape>
</item>
<item>
    <shape android:shape="rectangle" >
        <solid android:color="@color/white" />
        <corners 
            android:radius="1dp"
            android:bottomRightRadius="0dp" 
            android:bottomLeftRadius="0dp" 
            android:topLeftRadius="5dp" 
            android:topRightRadius="5dp"/> 
    </shape>
</item>
</layer-list>

->drawable-v12文件夹中:

<?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/grey" />

        <padding
            android:bottom="1dp" />
        <corners 
            android:radius="0dp"/> 
    </shape>
</item>
<item>
    <shape android:shape="rectangle" >
        <solid android:color="@color/white" />
        <corners 
            android:bottomRightRadius="0dp" 
            android:bottomLeftRadius="0dp" 
            android:topLeftRadius="5dp" 
            android:topRightRadius="5dp"/> 
    </shape>
</item>
</layer-list>

我希望它会有所帮助!

于 2013-09-27T04:39:03.420 回答