美文网首页
Android 使用drawable 画竖直虚线

Android 使用drawable 画竖直虚线

作者: 逆光_初见 | 来源:发表于2024-03-21 14:00 被阅读0次

1、先使用Drawable 生产一条水平虚线

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="line">
    <stroke
        android:width="1dp"
        android:color="#6480ae"
        android:dashWidth="5dp"
        android:dashGap="3dp" />

</shape>

2、使用Layer-list 旋转, 生成竖直虚线

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:left="-300dp"
        android:right="-300dp">
        <rotate
            android:drawable="@drawable/shape_c7d1e3_line"
            android:fromDegrees="90"
            android:toDegrees="90" />
    </item>
</layer-list>

说明:
使用rotate标签,让水平分割线, 旋转90度,变成垂直.
但是,单纯旋转还是不够的, 因为分割线的尺寸,会受到View边界的限制, 如果View的尺寸为: W1dp*H24dp, 那么虚线的长度只有1dp, 旋转后,依旧是看不到的, 解决方法如下:
使用layoer-list, 扩展Drawable的尺寸, 通过指定left和right属性为负值, 可以让layer-list的边界超过View的边界, 这样再旋转, 虚线即可完整展示
上面的left和right属性, 要设置成绝对值相等,因为旋转的锚点是中心点, 如果不对称, 旋转之后, 仍然看不到虚线.

如果虚线不能显示,把View的layerType设置为software,不过本人测试不设置也可以显示。
其实Shape还可以实现其他很多功能。比如: 角,一半圆角,圆角矩形,颜色的渐变,等等。

相关文章

网友评论

      本文标题:Android 使用drawable 画竖直虚线

      本文链接:https://www.haomeiwen.com/subject/mhwftjtx.html