surga Lab

開発したい!!

Dart

Flutter Firestoreで複数ドキュメントに渡るTransactionを張る方法

Firestoreのトランザクションを複数のドキュメントに張る方法です。 1つのドキュメントを読み取り、その後同じドキュメントで書くような場合は単純です。(例えばインクリメント) トランザクション内でgetした後にupdateもしくはsetすればいいだけですね。 fi…

Flutter AndroidとiOSでFirestoreトランザクションの挙動が異なる

FlutterでFirestoreトランザクションを試していた時にハマった話です。 現象 AndroidとiOSでFirestoreトランザクションの挙動が異なる Android : トランザクションに失敗しているのに成功として処理される Android : トランザクション中でthrowするとエラー…

Flutter Firestoreで分散カウンタを実装する

分散カウンタを簡単なカウントアップアプリで試してみます。 分散カウンタ 多くのアプリでは、いいね数やフォロワー数のためにカウントアップが必要です。 しかしFirestoreでは、制限上1つのドキュメントにつき1秒に1回しか更新することができません。 そこ…

Flutter Firestoreのサンプルを動かしてみる

FlutterでFirestoreを扱ってみます。 Firebaseの導入 まずはFlutterのプロジェクトにFirebaseを対応させます。 対応手順はこれ以上ないくらい公式に記載されていますので、割愛します。 ステップ4まで進めましょう。 firebase.google.com Firestoreの導入 pu…

Flutter 画像ロード時にプレースホルダーを表示する

Flutterアプリで画像を表示する際にロード画面を表示する方法です。 画像の表示 with ロード画面 Flutterアプリで画像を表示する方法は以前のブログで紹介しましたが、 インターネットの画像を表示する場合、少なからずダウンロードの時間が発生します。 ユ…

Flutter URL指定で画像を表示する

Flutterアプリでインターネット上の画像を表示する方法です。 画像の表示 インターネットから取ってきた画像を表示するシチュエーションはよくありますが、Flutterなら簡単に対応することができます。 使う画像はもちろんいらすとやです。 URLの指定 Image.n…

Flutter アプリに内蔵されている画像を表示する

アプリ内に登録した画像(assetsに登録した画像)を表示する方法です。 画像の表示 Flutterで画像を表示するにはいくつかの方法がありますが、 今回はアプリ内にあらかじめ画像を保管した画像を表示する方法になります。 使う画像は例によっていらすとやです。…

Flutter/Dart サンプルコードのコンストラクタでは何をやっているのか

Flutterの勉強を始めると下記のようなコードをよく見ると思います。 プロジェクトを新規作成した時のサンプルコードも同じ書き方ですね。 class MyHomePage extends StatefulWidget { MyHomePage({Key key, this.title}) : super(key: key); final String ti…

Flutter ListTileでIconをタップした時だけイベントを発生させる

codelabsの「Write Your First Flutter App, part 2」ではタップをListTile全体で取得していますが、 codelabs.developers.google.com Tile全体のタップではなく、Iconのタップだけを認識するようにします。 結論 IconButtonを使う。 問題 codelabsのサンプ…