Android布局带切角边框Shape实现问题求助
实现Android切角矩形Shape的解决方案
你当前的Shape代码是实现圆角矩形,而切角(斜角)矩形无法通过corners标签实现,需要用shape的path标签自定义路径来绘制。以下是对应你需求的切角Shape代码:
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <!-- 填充色 --> <solid android:color="#fefefe" /> <!-- 描边 --> <stroke android:width="1dp" android:color="#e3e3e3" /> <!-- 内边距 --> <padding android:bottom="5dp" android:left="15dp" android:right="15dp" android:top="5dp" /> <!-- 自定义切角路径,这里设置四个角各切10dp的斜角 --> <path android:pathData="M10,0 L0,10 L0,height-10 L10,height Lwidth-10,height Lwidth,height-10 Lwidth,10 Lwidth-10,0 Z" /> </shape>
代码说明:
pathData里的width和height是Shape的宽高,系统会自动替换为实际尺寸,无需手动填写具体数值- 每个角的切角大小由
10控制(对应你原来的10dp),如果要调整切角大小,修改这些数值即可 - 保持了你原来的填充色、描边、内边距参数,样式和原代码一致,仅将圆角改为切角
如果需要仅对特定角做切角,比如只切左上角和右下角,只需修改pathData的路径节点即可,示例:
<path android:pathData="M10,0 L0,10 L0,height Lwidth-10,height Lwidth,height-10 Lwidth,0 Z" />
内容的提问来源于stack exchange,提问作者Sok Veasna
相关产品推荐
相关产品推荐

