Android利用shape画虚线
博客专区 > tyronejw 的博客 > 博客详情
Android利用shape画虚线
tyronejw 发表于2年前
Android利用shape画虚线
  • 发表于 2年前
  • 阅读 570
  • 收藏 2
  • 点赞 2
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

摘要: 通过shape方式画虚线,针对4.4以上系统,需要在配置文件中添加: android:layerType="software"

Android利用shape画虚线

我们知道,想在Android XML中画出一条直线,很简单: <View android:layout_width="match_parent" android:layout_height="1px" android:background="#FFFFFF"/> 如果想要画出一条虚线呢? 在drawable目录下新建bg_dash_line.xml

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="line"> <stroke android:width="3px" android:color="#FFFFFF" android:dashWidth="10px" android:dashGap="10px" /> </shape> 说明: 显示一条虚线,width为线条的高度,dashWidth为破折线的宽度,dashGap为破折线之间的空隙的宽度,当dashGap=0时,就是实线 注意:

  1. 如果在<stroke>标签中设置了android:width,则在<View>标签中android:layout_height的值必须大于android:width的值,否则虚线不会显示。如果不设置,默认android:width为0。
  2. 关于4.0以上设备虚线会变实线的问题: 代码中可以添加: [java] view plaincopy在CODE上查看代码片派生到我的代码片 line.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
    XML中可以添加: [html] view plaincopy在CODE上查看代码片派生到我的代码片 android:layerType="software"
    如上例所示,如果想正常的显示虚线: <View android:layout_width="match_parent" android:layout_height="4px" android:layerType="software" android:background="@drawable/bg_dash_line"/>
共有 人打赏支持
粉丝 3
博文 126
码字总数 20540
×
tyronejw
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: