如何解决Android 仅在左侧为较小形状的圆角创建半径
我设置了 android:radius="20dp"
但为什么圆角只在左边?红色形状的右侧也应该有圆角
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<solid android:color="#c61b1f" />
<corners
android:radius="20dp"/>
<padding android:left="60dp" />
</shape>
</item>
<item>
<shape android:shape="rectangle">
<solid android:color="#eeeeee" />
</shape>
</item>
</layer-list>
更新
我想实现EditText
的下一个背景
我们可以为 width
设置 item
(用于第一个左形状)但它只能从 23+ API 中使用,我需要支持 21+
我有一个适用于 23+ API 的解决方案:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
// white shape
<shape android:shape="rectangle">
<solid android:color="#eeeeee" />
<corners android:radius="20dp"/>
</shape>
</item>
// red shape
<item android:width="60dp">
<shape android:shape="rectangle">
<solid android:color="#c61b1f" />
<corners
android:radius="20dp"/>
</shape>
</item>
</layer-list>
解决方法
您可以尝试以下方法,右侧现在也有圆角半径。
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<corners
android:radius="20dp"/>
<solid android:color="#eeeeee" />
</shape>
</item>
<item android:right="340dp">
<shape android:shape="rectangle">
<solid android:color="#c61b1f" />
<corners
android:radius="20dp"/>
</shape>
</item>
</layer-list>
结果如下
,因为被遮盖而看不见。
<?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="#c61b1f" />
<corners android:radius="20dp" />
<padding android:left="60dp" />
</shape>
</item>
<item>
<shape android:shape="rectangle">
<solid android:color="#eeeeee" />
<corners
android:bottomRightRadius="20dp"
android:topRightRadius="20dp" />
</shape>
</item>
</layer-list>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。