top of page
M.R
ソフトウェア開発などについての情報を綴ります
検索
[Flutter/dart] firestoreにあるはずのdocumentがクエリにかからない
概要 firestoreに保存しているdocumentのうち、条件を満たす物だけを取得したい。where()を用いてクエリをかけたが、あるはずのdocumentが取得できない(console上では確かに存在している)。 原因...
2021年10月9日
[Flutter/dart] 親WidgetからのリビルドかsetState()によるリビルドかを判別する
概要 StatefulWidgetでページを作っている際、親Widgetからリビルドされたのか、setState()でページ内からリビルドされたのかを判別したいという状況に遭遇しました。 より具体的には、Providerの子Widgetにページを置いて、ある状態が変更された...
2021年10月3日
[Flutter/dart] firebase_authで初めてのログインかどうかを判別する
概要 アプリにgoogleアカウントなどでのログイン機能を使用している場合、初めてのログインなのかどうかを判別したい場合があります。例えば、初めてログインしたときにそのユーザのデータベースを作る、といった使用方法です。 今回は、firebase_authのgoogleログイ...
2021年7月24日
![[Flutter/dart] Widgetの位置揃えにはTableが便利](https://static.wixstatic.com/media/90b712_be0cb357d9804c48bc7a797978e65b89~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_be0cb357d9804c48bc7a797978e65b89~mv2.webp)
![[Flutter/dart] Widgetの位置揃えにはTableが便利](https://static.wixstatic.com/media/90b712_be0cb357d9804c48bc7a797978e65b89~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_be0cb357d9804c48bc7a797978e65b89~mv2.webp)
[Flutter/dart] Widgetの位置揃えにはTableが便利
概要 Flutterで複数のWidgetの位置を揃える場合、縦揃えにはColumn、横揃えにはRowを使うことが多いと思います。しかし、縦横両方の位置を揃えたいとき、RowとColumnの併用では難しい場合があります。そんな場合はTableを使うと便利ですよ。 具体例...
2021年7月24日


「家事チェックアプリ」にキッチンのタオル交換を追加
概要 前回、FlutterとRaspberry Piを用いて掛タオルの交換を監視するアプリを作りました。そこに、キッチンの掛タオルの交換を監視するタスクも追加しました。 詳細:スマホアプリ側 スマホアプリ側は前回すでに汎用的に作っていたので、今回は「+」ボタンをタップして新...
2021年6月30日


FlutterとRaspberry Piで掛タオル交換監視アプリを作った
概要 一人暮らしの男がやらない家事第1位は掛タオルの交換である。 ということで忘れないようにカメラでタオルを監視して、指定の時間経っても交換されなかったら警告するアプリをつくりました。 詳細:スマホアプリ側 家事を追加し、目標を設定...
2021年6月11日


FirebaseのGoogleSignInを使ったアプリをリリース後にすること
概要 スマホアプリでアカウント認証を行う際、firebaseのGoogleSignInを使用することも多いかと思います。ただし、GoogleSignInを使ったアプリをリリースした場合は必ずやらなければならないことがあります。 正式なSHA-1フィンガープリントを追加する...
2021年6月4日
[Flutter/dart] firestoreにMapデータを保存する際の注意点
概要 自分はアプリのデータを保存するのにfirebaseのcloud firestoreを使用しています。 今般、firestoreにMapデータを保存しようと思ったのですが、いくつかひっかかりポイントがありました。 注意点1:keyはString...
2021年6月4日
![[Flutter/dart] Cardのデザインを考える](https://static.wixstatic.com/media/90b712_c8d037900f7046a9b29afafc0a43646d~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_c8d037900f7046a9b29afafc0a43646d~mv2.webp)
![[Flutter/dart] Cardのデザインを考える](https://static.wixstatic.com/media/90b712_c8d037900f7046a9b29afafc0a43646d~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_c8d037900f7046a9b29afafc0a43646d~mv2.webp)
[Flutter/dart] Cardのデザインを考える
スマホアプリでは情報をひとまとめにするのにカード(FlutterではCardやListTile)がよく使われます。今回はそんなカードのデザインについて(特にAndroidにおいて)考えてみました。 ちなみに改善する前のデザインはこんな感じでした。なんかめっちゃ芋っぽいですね...
2021年5月11日
![[Flutter/dart] AndoridのAppBarのデザインを考える](https://static.wixstatic.com/media/90b712_2a83f789f50e4c28939b3cf9a7f92118~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_2a83f789f50e4c28939b3cf9a7f92118~mv2.webp)
![[Flutter/dart] AndoridのAppBarのデザインを考える](https://static.wixstatic.com/media/90b712_2a83f789f50e4c28939b3cf9a7f92118~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_2a83f789f50e4c28939b3cf9a7f92118~mv2.webp)
[Flutter/dart] AndoridのAppBarのデザインを考える
スマホアプリを作成する上でデザインを良くすることは避けては通れない道ですよね。 今回は、Androidアプリの、特にAppBarのデザインについて考えてみたいと思います。 色は白 or 背景色 flutterのデフォルト設定だとAppBarはメインカラーでべた塗されます。で...
2021年5月10日
![[Flutter/dart] Cloud FirestoreとFirebase_Storageを組み合わせてデータを管理する](https://static.wixstatic.com/media/90b712_46a0cd5d42414246bb59dee48fb46522~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_46a0cd5d42414246bb59dee48fb46522~mv2.webp)
![[Flutter/dart] Cloud FirestoreとFirebase_Storageを組み合わせてデータを管理する](https://static.wixstatic.com/media/90b712_46a0cd5d42414246bb59dee48fb46522~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_46a0cd5d42414246bb59dee48fb46522~mv2.webp)
[Flutter/dart] Cloud FirestoreとFirebase_Storageを組み合わせてデータを管理する
概要 サーバレスのアプリでユーザの情報などを保存しておく場合、cloud firestoreを使うことが多いかと思います。ただし、firestoreに保存できるのはint、stringなどの値だけで、画像の保存はfirebase_storageを使用する必要があります。...
2021年5月9日
![[Flutter/dart] CheckboxListTileをタップ時のイベントを実装したい](https://static.wixstatic.com/media/90b712_a71097b0dd604249bac1badab66ed898~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_a71097b0dd604249bac1badab66ed898~mv2.webp)
![[Flutter/dart] CheckboxListTileをタップ時のイベントを実装したい](https://static.wixstatic.com/media/90b712_a71097b0dd604249bac1badab66ed898~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_a71097b0dd604249bac1badab66ed898~mv2.webp)
[Flutter/dart] CheckboxListTileをタップ時のイベントを実装したい
概要 文字列とチェックボックスを横一列に配置したい場合はCheckboxListTileが便利です。 しかし、文字列をタップしたときに、別のページへ移動するなどのイベントを実装したい場合は注意が必要です。 class MyHomePageState extends...
2021年5月9日
[Flutter/dart] Cloud Firestoreで特定のフィールドだけを更新する
概要 スマホアプリでユーザのデータを保存する先としてcloud firestoreを使用することは多いと思います。保存されたデータのうち、あるドキュメント内の特定のフィールドだけ更新する際に注意する点があったのでご紹介しておきます。 詳細...
2021年5月4日
![[Flutter/dart] ModalBottomSheet内でスクロールする](https://static.wixstatic.com/media/90b712_efe27c99566c461485134a3a9d8891fff000.jpg/v1/fill/w_333,h_250,fp_0.50_0.50,q_30,blur_30,enc_avif,quality_auto/90b712_efe27c99566c461485134a3a9d8891fff000.webp)
![[Flutter/dart] ModalBottomSheet内でスクロールする](https://static.wixstatic.com/media/90b712_efe27c99566c461485134a3a9d8891fff000.jpg/v1/fill/w_454,h_341,fp_0.50_0.50,q_90,enc_avif,quality_auto/90b712_efe27c99566c461485134a3a9d8891fff000.webp)
[Flutter/dart] ModalBottomSheet内でスクロールする
概要 スマホアプリでは、メニューを選択してもらう時にメニューが画面下から現れる場合がありますが、これはFlutterではshowModalBottomSheetで作成できます。 しかし、表示したいメニューが多いと、ModalBottomSheetの中に入りきりません。このよ...
2021年5月4日
![[Flutter/dart] ColumnやRowで残った領域に合わせてWidgetのサイズを変更する](https://static.wixstatic.com/media/90b712_72e19aa43fea4d1fa44b4dc87b4171d3~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_72e19aa43fea4d1fa44b4dc87b4171d3~mv2.webp)
![[Flutter/dart] ColumnやRowで残った領域に合わせてWidgetのサイズを変更する](https://static.wixstatic.com/media/90b712_72e19aa43fea4d1fa44b4dc87b4171d3~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_72e19aa43fea4d1fa44b4dc87b4171d3~mv2.webp)
[Flutter/dart] ColumnやRowで残った領域に合わせてWidgetのサイズを変更する
概要 Flutterでアプリを作っていると、「ある大きさの決まったWidgetを配置し、残ったスペースに合わせてもう一つのWidgetを最大化して配置したい」という状況があります。 例えばページ最下部に広告を配置し、残った領域の中でSingleChildScrollView...
2021年5月4日


Flutter + Raspberry piで「リストに追加することを忘れない」買い物リストアプリを作る
概要 キッチンで作業していたら洗剤がそろそろないことに気づいた。でも今スマホは手元にないからあとで買い物リストにいれておこう、、、といって結局買い物リストに追加するのを忘れてしまう。 皆さんもこんな経験はないでしょうか?自分はこんなことばっかりです。...
2021年4月17日
![[Flutter/dart]Mapの要素の並び替えや抽出](https://static.wixstatic.com/media/90b712_3a65eb0e5f114d0b9f1f594149a43fa5~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_3a65eb0e5f114d0b9f1f594149a43fa5~mv2.webp)
![[Flutter/dart]Mapの要素の並び替えや抽出](https://static.wixstatic.com/media/90b712_3a65eb0e5f114d0b9f1f594149a43fa5~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_3a65eb0e5f114d0b9f1f594149a43fa5~mv2.webp)
[Flutter/dart]Mapの要素の並び替えや抽出
概要 Flutterでのアプリ作成において、僕はユーザデータなどをMapで保持することが多いです(listだとデータを削除したときのindexのずれへの対応が面倒なため)。その場合、データを画面上に表示する際に、順番を規定したり特定の条件のデータだけを取り出したりするには一...
2021年3月26日
![[Flutter/dart]Stackした要素を画面いっぱいに広げる](https://static.wixstatic.com/media/90b712_3ffd605d83ea443288e959b58f56f2cc~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_3ffd605d83ea443288e959b58f56f2cc~mv2.webp)
![[Flutter/dart]Stackした要素を画面いっぱいに広げる](https://static.wixstatic.com/media/90b712_3ffd605d83ea443288e959b58f56f2cc~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_3ffd605d83ea443288e959b58f56f2cc~mv2.webp)
[Flutter/dart]Stackした要素を画面いっぱいに広げる
概要 FlutterでColumn内に配置した要素を画面いっぱいに広げるためにはcrossAxisAligmentプロパティをCrossAxisAligment.stretchにします。ただし、子要素がStackの場合は少し工夫が必要でした。 方法...
2021年3月25日
![[Flutter/dart] 棒グラフを作成する](https://static.wixstatic.com/media/90b712_3fbe47f4b5884df1bf04d7912b78675b~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_3fbe47f4b5884df1bf04d7912b78675b~mv2.webp)
![[Flutter/dart] 棒グラフを作成する](https://static.wixstatic.com/media/90b712_3fbe47f4b5884df1bf04d7912b78675b~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_3fbe47f4b5884df1bf04d7912b78675b~mv2.webp)
[Flutter/dart] 棒グラフを作成する
概要 アプリ内でユーザのデータを棒グラフで表示したい場合がありますよね。今回はflutterで棒グラフを作成する方法をご紹介します。 方法 charts_flutterというライブラリを使用します。(公式) インストール pubsec.yamlに以下を追加してください。...
2021年2月25日
![[Flutter/dart]カレンダーを自作する](https://static.wixstatic.com/media/90b712_fb47d32f1edf4aeea33e2db01f4ddc1d~mv2.png/v1/fill/w_333,h_250,fp_0.50_0.50,q_35,blur_30,enc_avif,quality_auto/90b712_fb47d32f1edf4aeea33e2db01f4ddc1d~mv2.webp)
![[Flutter/dart]カレンダーを自作する](https://static.wixstatic.com/media/90b712_fb47d32f1edf4aeea33e2db01f4ddc1d~mv2.png/v1/fill/w_454,h_341,fp_0.50_0.50,q_95,enc_avif,quality_auto/90b712_fb47d32f1edf4aeea33e2db01f4ddc1d~mv2.webp)
[Flutter/dart]カレンダーを自作する
概要 スマホアプリでカレンダーを使う機会は多いですよね。カレンダーを使用できるライブラリは多いのですが、自分がやりたいことができない、ということも多いでしょう。特に、日付と一緒に他のwidgetを表示することがやりにくいものが多い印象です。...
2021年2月23日
bottom of page