Flutter

firebase_storageでPermission denied対応

firebase_storageの扱い方で数時間を溶かしたので、同じような人が出ない為にまとめました。 TL; DL よくない例 FirebaseStorage _storage = FirebaseStorage(app: myapp); final ref = _storage.ref().child(dirname).child(filename); よい例1 FirebaseSto…

Dartのコンストラクタでインスタンスメソッドを上書いてインスタンス変数を変更したかった(未解決)

タイトル通りなのですが、結論から言うと、現時点ではできないと思います。 きっかけはありがちなこんなコード。 class AwesomeButton extends RaisedButton { int _index = 1; AwesomeButton() : super( child: const Text('Awesome!'), onPressed: () { pr…

analysis_options.yamlをカスタマイズする(3)

analysis_options.yamlのカスタマイズ、3回め。 今日はerrorsについてです。 公式ドキュメントはこちら。 さて、analysis_options.yamlが面白いなと思うのは、チェック基準を厳しくもできるし、ゆるくもできるところ。 analyzer: errors: missing_required_p…

analysis_options.yamlをカスタマイズする(2)

昨日の続きで、analysis_options.yamlの項目たちの説明です。 昨日の復習も含めて書いてゆきます。 analyzer: strong-mode: implicit-casts: false implicit-dynamic: false 動的型付け・型のキャストを許可する項目です。どちらもデフォルトはtrue。 動的型…

Dart DevToolsの使い方

ウィジェットを並べていくFlutterは、ウィジェットのネストが深くなりがち。 どのウィジェットのHeight指定がうまくいってないの…?を確認したくなった時とか、ウィジェットの構造を確認したくなった時に便利なのがDart DevToolsです。 DartDevTools - Getti…

analysis_option.yamlをカスタマイズする

VSCodeやAndroidStudioを使っていると、Dart Analysis Serverが構文エラーをチェックしてくれます。非常に便利な機能ですが、これをカスタマイズできるのがanalysis_option.yaml。 Customize Static Analysis - Dart pubspec.yamlと同じディレクトリに置いて…

FlutterでDialogの表示を変更できなかったお話

今日はFlutterのダイアログのお話。 ダイアログの中にテキストフィールドを準備して、バリデーション違反があったらエラーメッセージを追加したいということがありました。 ダイアログの表示自体はSimpleDialogやAlertDialogを使えばできるのですが、表示の…

FlutterでEXCEPTION CAUGHT BY RENDERING LIBRARYが出た時の対応方法

久々Flutter。 今日のお題はEXCEPTION CAUGHT BY RENDERING LIBRARYエラー。 読んで字のごとく、レンダリングに関するエラーです。 例として、こんな画面を考えてみます。 スクロールを検知して_currentIndexを設定 floatingActionButtonタップで_awesomeLis…

Flutterで画面遷移を実装する

昨日の続き。BottomNavigationBarの画面遷移を実装します。 といいつついきなりBottomNavigationBarはさておいて、画面遷移の方法はどうやら大きくわけて3つあるようです。 Navigatorクラスを使ってpush/pop ウィジェットの切り替えを行う PageControllerを…

FlutterでbottomNavigationBarを実装する

ネイティブアプリでよく見る、画面下部にあるナビゲーションバーのことを、ボトムナビゲーションバーというそうです! ナビゲーションバーだとアンドロイドで言うと「◀」「●」「■」が並ぶエリアと呼び方がかぶってしまうので、「ボトムナビゲーションバー」…

Flutterでgoogleにログインする

毎日Flutter。 今日はFirebaseで認証をします。 Pubはこれ(firebase_auth)ですね。 google_sign_inを追加する まずはgoogle_sign_inを追加します。 pubspec.yamlに下記追記して、flutter packages get。 dependencies: flutter: sdk: flutter image_picker: …

FlutterでFirebaseのStorageを使う〜前編〜

先日Flutterアプリにカメラボタンをつけましたが、写真を撮ったその後の処理がなかったので、今日は撮った写真をFirebaseにつないでアップロードしてみます。 ちなみにFirebaseとは、Googleが開発・提供しているmobile Backend as as Service(mBaaS)のこと。…

Flutterアプリにimage_pickerを使ってカメラ呼び出しボタンをつける

心はRubyistなのですが、毎日Flutterを触っているので今日も今日とてFlutterネタ。 Flutterといえば今日小田急線のロゴを見かけて、「Flutterのアイコンと似てる!!」とテンションがあがったのですが、帰って確認してみたら共通点は三角形ということと水色…

Flutter tutorialで簡単なアプリを作る

Flutterの環境構築が終わったので、早速Tutorialをやっていきます。 記事はVSCodeのていで書いているので、他のアプリの方は適宜読み替えをどうぞ お題は'Startup Name Generator'。要件としてはこんな感じ。 スタートアップ企業の名前が並ぶ ユーザは名前を…

はじめてのFlutter〜環境構築後編〜

Flutterの環境構築のお話、後編です。 前編はこちらからどうぞ。 Steps Flutter SDKのインストール Android Studioのインストール <-いまここ XCodeのインストール DLに時間がかかるものリスト Flutter SDK Android Studio (Component, Gradle, 仮想端末イメ…

はじめてのFlutter〜環境構築前編〜

新しくReactNativeを使う予定だったのですが、予定変更でFlutterでやるよ!ということになったので、Flutterはじめました。 ので、今日はその環境構築メモの前半戦を記載していきたいと思います。 DLに時間がかかるものリスト 先にDLをしかけながら読んでい…