2019-09-01から1ヶ月間の記事一覧

Android実機 を Mac / Windows で画面共有する Vysor を紹介

はじめに 今回は、Androidの画面をPCの画面に表示させる方法を紹介します。 もちろん無料で使えます。(有料版もあります。) 必要なツール GoogleChrome 使用するのがGoogleChromeのアプリなので、インストールが必要になります。 www.google.co.jp Vysor G…

iOS 主流なライブラリ一覧 2019版

はじめに この間、iOSのライブラリを一通り調べる機会があったので残しておきます。 Auto Layout ​ コードからAutoLayoutを設定する際にシンプルにかけるようになる。 StoryboardでAutoLayoutの設定をするのが嫌いな人にとっては必須です。 必要になればどち…

CollapsingToolbarLayout の状態変更を使いやすくする

はじめに 今回は、CollapsingToolbarLayout を使うときに便利なリスナーを紹介します。 CollapsingToolbarLayoutの基本的な実装については説明しないので、xmlの組み方については公式ページでも見てください。 material.io AppBarLayoutをカスタム Collapsin…

Android EditText の TextWatcher をラムダで簡略化

はじめに 今回は、Androidのリスナーをラムダを使用して簡略化する方法を紹介します。 例として、EditTextのTextWatcherをサンプルとして扱ってみます。 TextWatcherとは、EditTextが入力された文字を通知するリスナーのことです。 以下のように、入力された…

Cloud Firestore で プロパティ名を指定する方法

はじめに 今回はFirestoreの保存するプロパティ名を指定する方法を紹介します。 オブジェクトへの変換方法については以下の記事も参考にしてみてください。 qoopmk.hatenablog.jp 解決 @PropatyName を使用して保存されるプロパティ名を指定することができま…

Android のスクリーンサイズ / ナビゲーションバーサイズ を取得

はじめに 今回は、Androidのさまざまな画面サイズを取得するサンプルコードを紹介します。 取得方法 青色の線が 画面サイズ(screenSize) 黄色の線が アプリが表示されている画面サイズ(applicationScreenSize) ピンク色の線が ナビゲーションバーサイズ…

Android Studio で 使われていないリソースを判別するPlugin

はじめに Android Studioは使われていないクラスや関数はみやすくていいのですが、使われていないリソースは表示されないのでわかりにくかったりします。 そこで、いつも導入しているのが、 「Android Resource Usage Count」というプラグインです。 リソー…

Firebase Cloud Firestore + RxJava / RxKotlin のオブジェクト変換

はじめに Firebase の Cloud Firestore で DocumentSnapshot または QuerySnapshot から モデルに変換する方法を紹介します。 解決策 Firestoreが用意してくれている toObject 関数を使えば終わりです。 firebase.google.com FirebaseFirestore.getInstance(…

Android Studio で KDoc を書きやすくする Plugin

はじめに みなさんは、Android StudioでKotlinをコーディングしているときに、 もっとドキュメントが書きやすくなればいいと思ったことはないでしょうか。 私はJavaDocに慣れてしまっていたので、 /** を入力し、改行したらドキュメントが自動生成されるもの…

Firebase リスナーを RxJava / RxKotlin に変換する Extension集

今回はみんな大好きFirebaseを使用する際に、 簡単にRxに変換する方法をご紹介したいと思います。 Firebaseといえど、認証系のAuth、データベースのFirestore、ストレージのStorageなど様々な機能があります。 そのすべてのリスナーをRxで流すような実装はよ…

Cloud Firestore で ServerTimestamp が null になる問題

AndroidでCloud Firestoreを使っていて、 データをCollectionに追加する際に、ServerTimestampを使って日時を設定していました。 以下のようなコードでもFirestoreには問題なく作成日時(createdAt)は保存されます。 /** * メッセージ * * @property id メ…