搜索插件、代码仓与 APP 分类

fdottedline_nullsafety 封面
插件详情v2.0.1

fdottedline_nullsafety

Flutter3 现在已完全支持

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
2250
喜欢数
27
Pub 分数
115

安装插件

flutter pub add fdottedline_nullsafety

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

一个 Flutter 包,为小部件提供虚线装饰,兼容 Flutter 3 和空安全。它使开发者能够轻松地在多个平台(包括 Android、iOS、Web、macOS、Windows 和 Linux)的 UI 中添加样式化的虚线。该包非常适合绘制视觉分隔符或可自定义虚线大小、间距和颜色的装饰元素。它使用简单的 API 可无缝集成到现有的 Flutter 项目中。

适合场景

  • 在列表中创建视觉分隔符
  • 设计自定义表单字段分隔符
  • 在布局中添加装饰性边框
  • 使用虚线增强用户界面
  • 构建响应式设计元素

主要特点

  • 空安全且兼容 Flutter 3
  • 可自定义的虚线大小和间距
  • 跨平台支持
  • 简单的 API 集成
  • 支持各种线条方向

适合对象

  • 寻求装饰性元素的UI设计师
  • 开发跨平台应用的开发者
  • 需要虚线装饰的项目
  • Flutter 初学者探索自定义组件
  • 需要干净、现代视觉分隔的应用程序

使用建议

  • 仅限线条装饰
  • 不支持动画
  • 在复杂布局中需要手动对齐
  • 不适用于动态线生成
  • 依赖父控件的约束进行渲染

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

fdottedline

Use the easiest way to create a dotted line view 👀!

[FDottedLine] provides developers with the ability to create dashed lines. It also supports creating a dashed border for a [Widget]. Support for controlling the thickness, spacing, and corners of the dotted border.

Author:Newton(coorchice.cb@alibaba-inc.com)

English | 简体中文

Like it? Please cast your Star 🥰 !

✨ Features

  • Supports dotted lines in both horizontal and vertical directions

  • Support to create dashed shapes

  • Provide super easy way to add dotted border to Widget

  • Support creating flexible dotted corner effects

⚙️ Parameter & Interface

🔩 FDottedLine param
Param Type Necessary Default desc
color Color false Colors.black Dotted line color
height double false null height. If there is only [height] and no [width], you will get a dotted line in the vertical direction.If there are both [width] and [height], you will get a dotted border.
width double false null width. If there is only [width] and no [height], you will get a dotted line in the horizontal direction.If there are both [width] and [height], you will get a dotted border.
strokeWidth double false 1.0 The thickness of the dotted line
dottedLength double false 5.0 The length of each small segment in the dotted line
space double false 3.0 The distance between each segment in the dotted line
corner FDottedLineCorner false null The corners of the dotted border. See [FDottedLineCorner] for details
child Widget false null If [child] is set, [FDottedLine] will serve as the dotted border of [child].At this time, [width] and [height] will no longer be valid.

📺 Demo

🔩 Horizontal Demo

FDottedLine(
  color: color,
  width: 160.0,
  strokeWidth: 2.0,
  dottedLength: 10.0,
  space: 2.0,
)

It is very simple to create a horizontal dotted line through FDottedLine.

The developer only needs to set the width parameter, but not the height parameter, which is all the developer needs to do for this.

If you want to control the thickness of the dotted line, set strokeWidth.

Through the dottedLength and space parameters, developers can freely control the length of each small segment in the dotted line and the distance between them.

⛓ Vertical Demo

FDottedLine(
  color: color,
  height: 160.0,
  strokeWidth: 2.0,
  dottedLength: 10.0,
  space: 2.0,
)

If you want to create a dotted line in the vertical direction, it is also very simple.

Developers only need to assign a value to height and leave width to be null or 0.

🔹 Dotted Shape Demo

FDottedLine(
  color: Colors.lightBlue[600],
  height: 100.0,
  width: 50,
  strokeWidth: 2.0,
  dottedLength: 10.0,
  space: 2.0,
)

FDottedLine can not only create simple dotted lines 🌝.

When developers assign values ​​to both width and height, they will be able to get a dotted rectangle! It's incredible.

🌏 Corner Demo

FDottedLine(
  color: Colors.lightBlue[600],
  height: 70.0,
  width: 70.0,
  strokeWidth: 2.0,
  dottedLength: 10.0,
  space: 2.0,
  
  /// Set corner
  corner: FDottedLineCorner.all(50),
)

With FDottedLine, developers can even create corner effects of dashed rectangles. For example: dotted rounded rectangle, dotted round...

🧩 Child Demo

FDottedLine(
  color: color,
  strokeWidth: 2.0,
  dottedLength: 8.0,
  space: 3.0,
  corner: FDottedLineCorner.all(6.0),
  
  /// add widget
  child: Container(
    color: Colors.blue[100],
    width: 130,
    height: 70,
    alignment: Alignment.center,
    child: Text("0873"),
  ),
)

In the past, it was very difficult to add a dotted border to a Widget.

Because the official did not provide us with a good solution. But now, FDottedLine makes things easier than ever. Developers only need to use their Widget as a child of FDottedLine.


/// #1
FDottedLine(
  color: color,
  strokeWidth: 2.0,
  dottedLength: 8.0,
  space: 3.0,
  corner: FDottedLineCorner.all(75.0),
  child: Container(
    width: 130,
    height: 130,
    alignment: Alignment.center,
    /// #2
    child: FDottedLine(
      color: color,
      strokeWidth: 2.0,
      dottedLength: 8.0,
      space: 3.0,
      corner: FDottedLineCorner.all(20.0),
      child: Container(
        width: 43.0,
        height: 43.0,
        color: Colors.grey[900],
      ),
    ),
  ),
)

This also means that through the nesting of FDottedLine, many super interesting views can be created.

💡 More Demo

See what FDottedLine can do!

When there is such a simple way to create a dotted line, developers can freely build more wonderful views.

More about the application of FDottedLine , look forward to the exploration of developers 🔆.

😃 How to use?

Add dependencies in the project pubspec.yaml file:

🌐 pub dependency

dependencies:
  fdottedline: ^<version number>

⚠️ Attention,please go to [pub] (https://pub.dev/packages/fdottedline) to get the latest version number of FDottedLine

🖥 Git dependency

dependencies:
  fdottedline:
    git:
      url: 'git@github.com:Fliggy-Mobile/fdottedline.git'
      ref: '<Branch number or tag number>'

⚠️ Attention,please refer to [FDottedLine] (https://github.com/Fliggy-Mobile/fdottedline) official project for branch number or tag.

💡 License

Copyright 2020-present Fliggy Android Team <alitrip_android@list.alibaba-inc.com>.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at following link.

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Like it? Please cast your Star 🥰 !

How to run Demo project?

1.clone project to local

2.Enter the project example directory and run the following command

flutter create .

3.Run the demo in example

所属分类

源码仓库

使用此插件的项目

暂无相关数据。