技術ブログ

プログラミング、IT関連の記事中心

Flutter

Flutterで2つのDateTimeの差分の時間を取得する方法

目次 2つのDateTimeの差分の時間を取得する方法 2つのDateTimeの差分の時間を取得する方法 以下の関数を用意します。 以下は差分の日時を「HH時間 mm分 SS秒」の形式で返却する関数です。 ※フォーマットはご自由に修正してください。 String getDiffDate(D…

FlutterでGPSの情報(緯度、経度)の配列から合計移動距離を計算して、キロメートル単位で返却する方法

目次 はじめに GPSの情報(緯度、経度)の配列から合計移動距離を計算して、キロメートル単位で返却する はじめに 本記事は、「google_maps_flutter」のライブラリで取得した「LocationData」から住所を取得する方法です。 「google_maps_flutter」に関して…

FlutterでGPS座標(緯度、経度)から住所を取得する方法

目次 はじめに GPS座標(緯度、経度)から住所を取得する方法 はじめに 本記事は、「google_maps_flutter」のライブラリで取得した「LocationData」から住所を取得する方法です。 「google_maps_flutter」に関しては、以下の記事をご覧ください。 pub.dev GP…

FlutterでYYYYMMDDHHmmSSの日付を取得する方法

目次 YYYYMMDDHHmmSSの日付を取得する方法 YYYYMMDDHHmmSSの日付を取得する方法 以下の関数を用意します。 「getDateToString」は、引数の日時を「YYYYMMDDHHmmSS」形式で返却する関数です。 「zeroPadding」は、「getDateToString」で呼び出される関数で、1…

Flutterで文字列の途中に変数を含める方法

目次 文字列の途中に変数を含める方法 文字列の途中に変数を含める方法 以下のように変数名の先頭に「$」をつけることで、変数を展開して文字列に含めることができます。 final sample = "テスト"; print("変数の値は「$sample」です。"); 以下のように、中…

FlutterでFirebaseのAuthenticationでログインした後、UIDの取得を行う方法

目次 はじめに 手順 はじめに 以下の記事を参考に、Authenticationでログインを行うこと。 https://reigle.info/entry/2022/11/02/100000reigle.info 手順 以下の記載で、UIDを取得することができます。 ログインしていない場合には、UIDはnullになります。 …

FlutterでFirebaseのAuthenticationでログインを行う方法

目次 はじめに 手順 はじめに Firebaseの公式サイトから、手順に沿ってFirebaseの組み込みを実施してください。 Firebaseの管理画面などから、アカウント作成を行なっておいてください。 手順 「pubspec.yaml」に以下を追加します。 dependencies: ~~~省略~~…

FlutterでFirebaseのRealTimeDatabaseに書き込みを行う方法

目次 はじめに 手順 はじめに Firebaseの公式サイトから、手順に沿ってFirebaseの組み込みを実施してください。 手順 「pubspec.yaml」に以下を追加します。 dependencies: ~~~省略~~~ firebase_core: ^1.3.0 firebase_database: ^9.0.19 ~~~省略~~~ 以下の…

Flutterで値を任意のタイミングで変更して画面描画する方法(setState)

目次 変数を書き換える方法 変数を書き換えて画面に描画する方法 変数を書き換える方法 以下の様に、「testStr」の変数の値を書き換えるには「testStr = "書き換えたい値";」とする事で書き換える事ができます。 しかし、この様に書き換えると、「testStr」…

Flutterで画面遷移時に遷移先画面に値を渡す方法

目次 値渡し前のソースコード 画面遷移ときに値を渡す方法 値渡し前のソースコード 以下が、ボタン押下時のソースコードです。 「NextPage」は環境によって書き換えてください。 Navigator.push( context, MaterialPageRoute(builder: (context) => NextPage…

Flutterで画面遷移の時に次画面が下から出てくる遷移方法

目次 下から出てくる画面遷移 下から出てくる画面遷移 「Navigator.push」での画面遷移の際に、下から出てくる画面遷移にするソースコードは以下です。 「fullscreenDialog」のパラメータを「true」にすることで、画面遷移時に下から出てくる様にしています…

Flutterで現在時刻の取得を行う方法(DateTime)

目次 現在時刻取得 現在の年月日時分秒をバラバラに取得する方法 現在時刻取得 以下のように「DateTime」を使用して時刻の取得を取得します。 DateTime.now(); 現在の年月日時分秒をバラバラに取得する方法 現在時刻取得から「年」「月」「日」「時」「分」…

Flutterで一定時間後に処理を実行する方法(Future.delayed)

目次 一定時間毎に処理を実行する方法 非同期処理の中で一定時間後に処理を実行する方法 一定時間毎に処理を実行する方法 以下のようにdelayed関数を使用することで、一定時間後に処理を実行する事ができます。 引数の「seconds」に何秒毎に処理を行いたいか…

Flutterで最初のページまで戻る、特定ページまで戻る方法(popUntil)

目次 最初のページまで戻る方法 特定ページまで戻る方法 最初のページまで戻る方法 以下の処理を任意のボタン押下イベントなどに記載する事で、最初のページまで戻る事ができます。 Navigator.popUntil(context, (route) => route.isFirst); 特定ページまで…

FlutterでFirebaseCoreのエラー firebase_core: Using Firebase SDK version '9.5.0' defined in 'firebase_core'

目次 エラー発生のタイミング エラーの内容 対応方法 エラー発生のタイミング Flutterにて、Firebaseを導入するために、「pubspec.yaml」に以下を追加した際に発生しました。 〜〜〜省略〜〜〜 dependencies: 〜〜〜省略〜〜〜 firebase_core: ^1.23.0 〜〜…

Flutterで一定時間毎に処理を実行する方法(Timer)

目次 一定時間毎に処理を実行する方法 一定時間毎の処理を止める方法 一定時間毎に処理を実行する方法 以下のようにTimer関数を使用することで、一定時間毎に処理を実行する事ができます。 引数の「seconds」に何秒毎に処理を行いたいかを設定する事ができま…

FlutterでYES/NOダイアログを作成する方法

目次 事前説明 コンポーネントのソースコードの全量 使い方(呼び出し方) 事前説明 Flutterの「AlertDialog」を元に、コンポーネント化したYES/NOダイアログの作り方、使い方を記載します。 コンポーネントのソースコードの全量 コンポーネントのソースコー…

Flutterで「One or more plugins require a higher Android SDK version」のエラーが出た場合

目次 エラーの内容 対応方法 エラーの内容 「One or more plugins require a higher Android SDK version」のエラーは、簡単に言うと、「コンパイルで使用しているAndroid SDKバージョンが古いから新しくしてね。」と言うエラーです。 Flutterのバージョンを…

Flutterの無名関数の作り方

目次 通常の関数 無名関数 通常の関数 通常の関数は、以下のように「関数名」をつけて用意する関数です。 void 関数名(引数の型 引数名) { 処理 } 無名関数 無名関数では、以下のように関数名を省略して記載する事ができます。 (引数の型 引数名) { 処理 }, …

Flutterでコンポーネントに関数を渡す方法(関数を引数で渡す方法)

目次 コンポーネントの準備 関数を引数に渡す方法 サンプルソースコード コンポーネントの準備 以下のような、サンプルのコンポーネントを用意してください。 import 'package:flutter/material.dart'; class Component extends StatelessWidget { const Com…

FlutterでRestAPIを実行する方法(GET通信)

目次 RestAPIとは 事前準備 RestAPIの実行 RestAPIとは 「RestAPI」は「RESTful API」とも言います。 RESTアーキテクチャスタイルに従い、Webサービスとの対話を可能にするAPIです。 RESTは「REpresentational State Transfer」の略です。 事前準備 「pubspe…

Flutterで外部クラス、共通クラスの呼び出し方法

目次 呼び出し元クラス 呼び出し先クラス 呼び出し方法 呼び出し元クラス 以下のような呼び出しクラスを用意します。 重要なものは「_MainClassState」のクラス内です。 import 'dart:async'; import 'package:flutter/material.dart'; import 'package:app_…

Flutterのプロジェクトのファイル構成

目次 はじめに 全ディレクトリ構成 ディレクトリの説明 はじめに 本記事では、Flutterプロジェクトを作成した直後のファイル構成に関して説明を記載します。 全ディレクトリ構成 第一階層の全ディレクトリは以下の構成になっています .dart_tool .idea andro…

Flutterのプロジェクト作成方法(VSCode、Mac)

目次 VSCodeの事前準備 VSCodeでFlutterプロジェクトの作成 VSCodeの事前準備 VSCodeの拡張機能で、以下の2つをインストールします。 Dart marketplace.visualstudio.com Flutter marketplace.visualstudio.com VSCodeでFlutterプロジェクトの作成 VSCodeの…