Flutter 自定义 虚线 分割线

这篇具有很好参考价值的文章主要介绍了Flutter 自定义 虚线 分割线。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

学习使用Flutter 进行 虚线 自定义控件 练习

// 自定义虚线 (默认是垂直方向)
class DashedLind extends StatelessWidget {
  final Axis axis; // 虚线方向
  final double dashedWidth; // 根据虚线的方向确定自己虚线的宽度
  final double dashedHeight; // 根据虚线的方向确定自己虚线的高度
  final int count; // 内部会根据设置的个数和宽度确定密度(虚线的空白间隔)
  final Color color; // 虚线的颜色

  const DashedLind({super.key,
    required this.axis,
    this.dashedWidth = 1,
    this.dashedHeight = 1,
    this.count = 10,
    this.color = const Color(0xffaaaaaa)
  });

  
  Widget build(BuildContext context) {
    return LayoutBuilder(
        builder: (BuildContext context, BoxConstraints constraints) {
      // 根据宽度计算个数
      return Flex(
        direction: axis,
        mainAxisAlignment: MainAxisAlignment.spaceBetween,
        children: List.generate(count, (_) {
        return SizedBox(
          width: dashedWidth,
          height: dashedHeight,
          child: DecoratedBox(
            decoration: BoxDecoration(color: color),
          ),
        );
      }),);
    });
  }
}

使用方法:


  Widget build(BuildContext context) {
    return Scaffold(
      // 脚手架
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          children: [
            Container (
              height: 200,
              child: const DashedLind(
                axis:Axis.vertical, // 垂直方向设置
                dashedHeight: 8,
                count: 12,
                color: Colors.red,
              ),
            ),
            Container(
              width: 200,
              child: const DashedLind(
                axis: Axis.horizontal, // 水平方向设置
                dashedWidth: 6,count: 15,
                color: Colors.red,
              ),
            )
          ],
        ),
      ),
    );
  }
}

纸上得来终觉浅,绝知此事要躬行。文章来源地址https://www.toymoban.com/news/detail-602314.html

到了这里,关于Flutter 自定义 虚线 分割线的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 《Vue2.X 进阶知识点》- 防 ElementUI Divider 分割线

    使用 el-divider 背景为白色是没问题的。 但当背景换成其它颜色,问题就出现了!! 仔细看原来是两层,默认背景色是 白色 。 想着把背景色改为 透明 应该能用,结果发现背面是一条实线,难怪要用白色遮挡…不符合我的需求… 那就仿一个吧( Vue 组件)~ 。先看效果,上为

    2024年02月04日
    浏览(39)
  • wxchart 小程序 线条图不显示y轴的网格线 (分割线)

    如下图:项目需求不显示包括x轴的6条灰色分割线。  分析: 看了一下源码已经写死了是5条分割线,加一条x轴刻度线。没给公开配置方法。  解决方案: 既然没有配置项目,可以转变思路,把这些线条配置成白色,那么也是等于没有线条。跟背景色一样。使用yAxis:{ gridCol

    2024年02月16日
    浏览(35)
  • 【微信小程序】要在两个<view>之间绘制一条分割线,使用border属性和样式

    要在两个 view 之间绘制一条分割线,可以使用 border 属性以及适当的样式设置。以下是一个示例代码: 在上述代码中,使用了一个 view 标签作为容器,内部包含两个内容 view 和一个分割线 view 。 .container 类设置了 display: flex; 属性,使内容和分割线水平排列。 .content 类设置了

    2024年02月07日
    浏览(37)
  • 【Flutter】Flutter Text 控件实现下划线、删除线、虚线、加粗、斜体

    在 Flutter 开发中,我们经常需要对 Text 控件进行各种样式的设置,包括但不限于下划线、删除线、虚线、加粗和斜体等。这些样式的设置可以帮助我们更好地展示文本内容,提升用户体验。本文将详细介绍如何在 Flutter 3.10.0 或更高版本中实现这些效果。阅读本文后,你将掌握

    2024年02月06日
    浏览(40)
  • 李浩然:从大数据能力提升项目出发,探索化工大数据之路 | 提升之路系列(一)...

    导读 为了发挥清华大学多学科优势,搭建跨学科交叉融合平台,创新跨学科交叉培养模式,培养具有大数据思维和应用创新的“π”型人才,由清华大学研究生院、清华大学大数据研究中心及相关院系共同设计组织的“清华大学大数据能力提升项目”开始实施并深受校内师生

    2024年01月25日
    浏览(38)
  • 探秘TypeScript:代码质量的提升之路

    随着前端开发的发展,JavaScript 已经成为了最受欢迎的编程语言之一。然而,JavaScript 是一个 弱类型 的语言,它并不是一种类型安全的语言。这在大型项目中会引发一些问题,例如 代码错误 、 难以维护 和 扩展性差 等等。 TypeScript 的出现正是为了解决这些问题。 官方对于

    2024年02月09日
    浏览(60)
  • 提升图像分割精度:学习UNet++算法

    由于工作需要对 UNet++ 算法进行调参,对规则做较大的修改,初次涉及,有误的地方,请各位大佬指教哈。 1.1 什么是 UNet++ 算法 UNet++ 算法是基于 UNet 算法的改进版本,旨在提高图像分割的性能和效果。它由 Zhou et al. 在论文 “ UNet++: A Nested U-Net Architecture for Medical Image Segment

    2024年02月03日
    浏览(45)
  • 提升弱小目标分割性能的网络模块!

    最近在做一些小目标分割的课题,看了一些论文后,亲自做了一些网络模块的实验,的确有不错的提升,现通过写这篇博文做相关总结。首先介绍下我做实验的数据集,该数据集是小目标分割数据集,汇集了NUST/IRSTD-1K/NUAA/annotation/红外(回丙伟)所有小目标红外图像,所有

    2024年02月12日
    浏览(34)
  • 高效分割分段视频:提升您的视频剪辑能力

    在数字媒体时代,视频剪辑已经成为一项重要的技能。无论是制作个人影片、广告还是其他类型的视频内容,掌握高效的视频剪辑技巧都是必不可少的。本文将介绍如何引用云炫AI智剪高效地分割和分段视频,以提升您的视频剪辑能力。以下是详细的操作步骤: 操作1、先电脑

    2024年02月07日
    浏览(73)
  • 宋绪杰:我的大数据成长之旅 | 提升之路系列(三)

    导读 为了发挥清华大学多学科优势,搭建跨学科交叉融合平台,创新跨学科交叉培养模式,培养具有大数据思维和应用创新的“π”型人才,由清华大学研究生院、清华大学大数据研究中心及相关院系共同设计组织的“清华大学大数据能力提升项目”开始实施并深受校内师生

    2024年02月21日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包