• 2022年7月1日

DartでURLエンコードとURLデコードを実施する

誰のためか DartやFlutterでURLエンコードやURLデコードをしたい人向けです。 URLエンコードとは、ブラウザのURL欄に日本語とか空白とかが入ったときに「%1G」みたいな文字の羅列に変換するやつです。 結論 色々探しましたが、結局coreに入ってました。 Uri.encodeFullとUri.decodeFullを使います テストコード

  • 2022年5月26日
  • 2022年5月26日

【Flutter】「Do not use BuildContexts across async gaps」という警告を消す方法

目的 Flutter 3.0 になってからかどうかは定かではありませんが、とりあえず「Do not use BuildContexts across async gaps」という警告が出るようになりました。この記事では、その理由と解決方法を記載します。 問題 以下のようなソースをStatefulWidgetのStateに書くと、「Do not use BuildContexts across as […]

  • 2022年5月14日
  • 2022年5月14日

【Flutter】画面一杯に背景画像を表示する

要件 スマホアプリの背景に画像を使いたい 画面が縦でも横でも、背景一杯に画像を出したい。 Widgetはスマホのノッチ(切り込み)に被らないようにしたい。 実装 解説 背景とメインコンテンツのレイヤーを作成する Stackを使って、背景とメインコンテンツを重ねる child: Stack( children: [ Container( 画像を表示する BoxFit.coverで、画面が縦でも横でも […]

  • 2022年5月12日
  • 2022年5月12日

【Flutter】enhanced-enumsを使う

Dart2.17.0がリリースされました。私は以下のような記事を作成して、Javaっぽいenumができることを期待してました。 enhanced-enumsで実現できるかな、と期待しましたが、半分しかできませんでした。が、通常の使い方では非常に便利になります。 実装例 まず、enhanced-enumsの実装とテストの例は、以下の通りです。注意点は コンストラクタをconstにする メンバー変数は […]

  • 2022年5月11日
  • 2022年5月11日

【Flutter】グラスモーフィズムを実現する

グラスモーフィズム(Glassmorphism)とはなにか ・2021年のデザイントレンドのひとつ ・曇りガラスのような質感を表現 詳しくは、「【グラスモーフィズム】デザインをつくってみた。」をご参照ください。こちらのデザインをFlutterで再現します。こちらのデザインを再現しているつもりです。大事なことなので、二回言いました。 べた書きで実装 雑な解説 Scaffoldに背景を出す Scaff […]

  • 2022年5月7日
  • 2022年5月7日

[Flutter] 「Uncaught Unable to load asset: packages/timezone/data/2020a.tzf」が発生

双腕重機。子供の本で知っていたが、本物は企画展「工事中! ~立ち入り禁止!?重機の現場」で初めて見た 状況 Flutterにて「syncfusion_flutter_calendar」というプラグインを使用して、カレンダーを使用している。開発中は、カレンダーにスケジュールを入れることができる。しかし、運用しようとホストにデプロイすると、開発環境では表示されていたスケジュールが表示されなくなった。ブ […]

  • 2022年4月20日

Android StudioでFlutterのサポートが消えた?デバイス名が出てこない

Android StudioでFlutterを使用していたら、デバイス名の欄が消滅した 問題点 Android StudioでFlutterを使用していると、通常[main.dart]のドロップダウンリストの左に、デバイスのドロップダウンリストが表示される「Chrome(web)やデバイス名、Windows(Desktop)など」。 そのデバイスのドロップダウンリストが消えてしまった。 解決策 . […]

  • 2022年4月13日
  • 2022年4月13日

[Flutter] pubspec.yamlからアプリ情報(バージョン等)を取得する【2022年4月版】

Fltuterを使用していて、起動画面にアプリのバージョンを表示したかったので検索した。package_infoを使え、とあったが、WEBで実施すると動作しなかった。パッケージのページを確認すると「DISCONTINUED」だった。Webのみならず、iOSやAndroidでも使わない方がよさそう。後継のパッケージとして、「package_info_plus」があったので使用した。互換性が保たれてい […]