2022-11-15

【Flutter】Katana Shorten

こんにちは。広瀬マサルです。

簡単なパッケージを作ってみました。

intdoubleからエクステンションを介してDurationEdgeInsetsSizedBoxを作成するパッケージです。

使い方をまとめたので興味ある方はぜひ使ってみてください!

katana_shorten

Flutter package to write Duration, EdgeInsets, etc. in short descriptions. Simple widgets are also provided.
https://pub.devhttps://pub.dev
title

はじめに

DurationEdgeInsetsなどはFlutterを実装する上でよく使うクラスだと思います。

意外と記述するための文字数が多く自動補完があるとはいえ文字を入力するための手間がかかってしまいます。

そのため、それらを短縮できるようなエクステンションをまとめたパッケージを作りました。

下記のように簡単に書けます。

Padding(
  padding: 16.p, // EdgeInsets.all(16)
  child: Text("text")
);

Future.delayed(100.ms); // Duration(milliseconds: 100)

インストール

下記のパッケージをインポートします。

flutter pub add katana_shorten

使い方

Duration

下記で代用できるようになります。

100.ms // Duration(milliseconds: 100)
100.s  // Duration(seconds: 100)
100.m  // Duration(minutes: 100)
100.h  // Duration(hours: 100)
100.d  // Duration(days: 100)

EdgeInsets(Padding / Margin)

下記で代用できるようになります。

100.p  // EdgeInsets.all(100)
100.px // EdgeInsets.symmetric(horizontal: 100)
100.py // EdgeInsets.symmetric(vertical: 100)
100.pt // EdgeInsets.only(top: 100)
100.pb // EdgeInsets.only(bottom: 100)
100.pl // EdgeInsets.only(left: 100)
100.pr // EdgeInsets.only(right: 100)

Space(SizedBox)

下記で代用できるようになります。

100.sx // SizedBox(width: 100)
100.sy // SizedBox(height: 100)

Empty() // SizedBox.shrink()

おわりに

自分で使う用途で作ったものですが実装の思想的に合ってそうならぜひぜひ使ってみてください!

また、こちらにソースを公開しているのでissueやPullRequestをお待ちしてます!

また仕事の依頼等ございましたら、私のTwitterWebサイトで直接ご連絡をお願いいたします!

FlutterやUnityを使ったアプリ開発やアプリの紹介。制作した楽曲・映像の紹介。画像や映像素材の配布。仕事の受注なども行っています。
https://mathru.nethttps://mathru.net
title

GitHub Sponsors

スポンサーを随時募集してます。ご支援お待ちしております!

Developed the katana/masamune framework, which has dramatically improved the overall efficiency of Flutter-based application development.
https://github.comhttps://github.com
title