您的位置:首页 > 移动开发 > Android开发

android shape corners 设置无效的解决

2014-04-07 21:28 423 查看
如果要分别设置上下左右的圆角

如下面的shape

<shape
android:padding="10dp"
android:shape="rectangle" >

<!-- 实心 -->
<solid android:color="@color/white" />
<!-- 圆角 -->
<!--             <corners android:radius="@dimen/switch_button_inside_radius" /> -->

<corners android:topRightRadius="@dimen/switch_button_inside_radius" />
<corners android:bottomRightRadius="@dimen/switch_button_inside_radius" />
</shape>


这样设置是没效果的,这是api的bug 

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

<item>
<shape
android:padding="10dp"
android:shape="rectangle" >

<!-- 实心 -->
<solid android:color="@color/white" />
<!-- 圆角 -->
<corners android:radius="@dimen/switch_button_inside_radius" />

<!-- <corners android:topRightRadius="@dimen/switch_button_inside_radius" /> -->
<!-- <corners android:bottomRightRadius="@dimen/switch_button_inside_radius" /> -->
</shape>
</item>
<item android:right="@dimen/switch_button_inside_radius">
<shape android:shape="rectangle" >
<solid android:color="@color/white" />
</shape>
</item>

</layer-list>


解决的方法是弄两层,后面那层用<corners android:radius="@dimen/switch_button_inside_radius" />画个4个角都是圆角的图,然后再在左边画个矩形把左边的圆角给盖住,

效果图:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android