パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v1.0.1

dashed_container

Flutter用のダッシュコンテナプラグイン。ウィジェットに破線を簡単に適用できます。

30日間ダウンロード
79
いいね数
15
Pub ポイント
25

パッケージをインストール

flutter pub add dashed_container

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

dashed_container パッケージは、ウィジェットの周りに点線枠を簡単に作成できる Flutter プラグインです。ダッシュ長さ、ギャップ、色、ストローク幅など、カスタマイズ可能な点線スタイルを備えた使いやすいコンテナを提供します。フォームフィールド、カード、装飾的なアウトラインなど、視覚的な区切りや強調が必要な UI 要素に最適です。このパッケージは、複雑なカスタムペイントコードなしで滑らかでスケーラブルな点線をレンダリングするために、Flutter のペイントシステムを利用しています。シンプルな pub 依存関係を通じて、既存の Flutter プロジェクトにシームレスに統合できます。

用途

  • UIコンポーネントに点線の枠を追加する
  • フォームフィールドのハイライトを作成する
  • 装飾的なカードのアウトラインをデザインする
  • レイアウト内の視覚的分離
  • 境界の美学をカスタマイズする

主な機能

  • 破線枠の簡単な API
  • 設定可能なダッシュ長さとギャップ
  • カスタムカラーおよびストローク幅のサポート
  • 軽量で効率的
  • 任意のウィジェット内での動作に対応

適している対象

  • 視覚的なバリエーションを求めるUIデザイナー
  • フォームやカードを構築する開発者
  • 軽量な装飾が必要なプロジェクト
  • Flutterの初心者がカスタムボーダーを探索しています
  • モダンでミニマリストデザインのアプリ

注意事項

  • 縁の装飾のみに限定
  • ダッシュされた塗りつぶしのサポートなし
  • 複雑なクリッピングを処理しない
  • シンプルな長方形の形状に最適
  • 複雑なレイアウトでは手動での整列が必要になる場合があります

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

dashed_container

A Dashed Container plugin for Flutter, easy to implement dashed line for your widgets

Demo

Demo:

Usage

To use plugin, just import package import 'package:dashed_container/dashed_container.dart';

Example

You can check example directory to know how to use it like the demo image.

    import 'package:flutter/material.dart';
    import 'package:dashed_container/dashed_container.dart';

    void main() => runApp(MyApp());

    class MyApp extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return MaterialApp(
          title: 'Flutter Demo',
          theme: ThemeData(
            primarySwatch: Colors.blue,
          ),
          home: MyHomePage(title: 'Flutter Demo Home Page'),
        );
      }
    }

    class MyHomePage extends StatefulWidget {
      MyHomePage({Key key, this.title}) : super(key: key);

      final String title;

      @override
      _MyHomePageState createState() => _MyHomePageState();
    }

    class _MyHomePageState extends State<MyHomePage> {
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(title: Text(widget.title)),
          body: SingleChildScrollView(
            child: Center(
              child: Column(
                mainAxisSize: MainAxisSize.max,
                crossAxisAlignment: CrossAxisAlignment.center,
                mainAxisAlignment: MainAxisAlignment.center,
                children: <Widget>[
                  Text('Line container - blankLength = 0'),
                  _buildSpace(),
                  DashedContainer(
                    child: Container(
                      height: 200.0,
                      width: 200.0,
                      decoration: BoxDecoration(color: Colors.blue, borderRadius: BorderRadius.circular(10.0)),
                    ),
                    dashColor: Colors.black,
                    borderRadius: 10.0,
                    dashedLength: 30.0,
                    blankLength: 0.0,
                    strokeWidth: 6.0,
                  ),
                  _buildSpace(),
                  Text('Dashed container - rectangle'),
                  _buildSpace(),
                  DashedContainer(
                    child: Container(
                      height: 100.0,
                      width: 200.0,
                      decoration: BoxDecoration(color: Colors.red, borderRadius: BorderRadius.circular(20.0)),
                    ),
                    dashColor: Colors.black,
                    borderRadius: 20.0,
                    dashedLength: 30.0,
                    blankLength: 6.0,
                    strokeWidth: 6.0,
                  ),
                  _buildSpace(),
                  Text('Dashed container - circle'),
                  _buildSpace(),
                  DashedContainer(
                    child: Container(
                      height: 200.0,
                      width: 200.0,
                      decoration: BoxDecoration(color: Colors.orange, shape: BoxShape.circle),
                    ),
                    dashColor: Colors.black,
                    boxShape: BoxShape.circle,
                    dashedLength: 30.0,
                    blankLength: 6.0,
                    strokeWidth: 6.0,
                  ),
                  _buildSpace(),
                  Text('Dashed container - custom'),
                  _buildSpace(),
                  DashedContainer(
                    child: Padding(
                      padding: const EdgeInsets.all(20.0),
                      child: FlutterLogo(
                        size: 80,
                      ),
                    ),
                    dashColor: Colors.black,
                    boxShape: BoxShape.circle,
                    dashedLength: 30.0,
                    blankLength: 6.0,
                    strokeWidth: 6.0,
                  ),
                  _buildSpace(),
                ],
              ),
            ),
          ),
        );
      }

      Widget _buildSpace() {
        return SizedBox(height: 10.0);
      }
    }

カテゴリー

ソースリポジトリ

このパッケージを使用しているプロジェクト

データはまだありません。