iOSエンジニアのつぶやき

毎朝8:30に iOS 関連の技術について1つぶやいています。まれに釣りについてつぶやく可能性があります。

Kotlin

【Kotlin】Fragment から Activity に画面遷移する

1.まずは遷移先の Activity を新規に作成します。 2.次に AndroidManifest に遷移先の Activity を追加します。なお、遷移元の Activity は既に追加されているものとします。 application タグの中に、新しく activity タグを追加し、android:name で遷移先…

Kotlin で Firestore から取得したデータを DocumentID 付きのモデルにマッピングする

今日は、タイトルの通り Firestore から取得したデータ(SnapShot)を DocumentID 付きのカスタムクラスに変換する方法を紹介します‍ それではやっていく まずは、データをマップするクラスを作成します。以前の記事でも紹介したように、マップするクラスはデ…

Kotlin の Enum を使ってみる

みなさん Kotlin は書いていますか?僕は、最近仕事の合間などに少しずつ書くようにしています‍ 今回はそんな、Kotlin の enum(列挙型) の基本的な使い方をみていきたいと思います。 余談ですが、毎日技術ブログを書いていると常時ネタ不足に陥るので、 iOS/…

Kotlin の型について知ろう

みなさん Kotlin は書いていますか?僕は、最近書き始めました‍ Swift との構文の違いを比較しながら勉強していくのが、結構楽しくてハマっています 今回はそんな Kotlin で使用する型などを簡単にまとめてみたいと思います。 基本の型 まずは、Kotlin Langu…

3分で RecyclerView を作成する

みなさん、Android の RecyclerView は使っていますか?僕はやっと最近触りはじめました(最近 Android はじめたので)‍♀️ なので、使ったついでにその実装方法の手順を今日は簡単に紹介したいと思います! それではやっていく 1.アプリレベルの Gradle に Rec…

Android(Kotlin) で Firebase Firestore を使ってデータを取得するまで

今回は、Android(Kotlin) で Firestore を使ってデータを取得するまでの手順を簡単に紹介したいと思います 前提条件 APIレベル16(Jelly Bean) 以降が対象 Gradle 4.1 以降 Jetpack(AndroidX) を使用 新規 Firebase プロジェクト作成済み Android アプリも登…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day21【Use LiveData to control button states編】

Android Kotlin Fundamentals: Use LiveData to control button states 学ぶこと database 内の既存の睡眠品質レコードを変更する方法 LiveData を使用してボタンの状態を追跡する方法 イベントに応じて snackbar を表示する方法 すること TrackMySleepQuali…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day20【Coroutines and Room編】

学ぶこと Android でスレッドがどのように機能するか Kotlin coroutines を使用して、database 操作をメインスレッドから移動する方法 フォーマットされたデータ TextView に表示する方法 すること TrackMySleepQuality アプリを拡張して、データベースとの…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day19【Create a Room database編】

イントロダクション ほとんどのアプリには、ユーザがアプリを閉じた後でも保持する必要のあるデータがあります。たとえば、アプリには、プレイリスト、ゲームアイテムの在庫、経費と収入の記録、星座のカタログ、または刑事的な睡眠データが保持される場合が…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day18【LiveData transformations編】

学ぶこと LiveDat で Transformations を使用する方法 すること ゲームを終了するタイマーを追加します。 Transformations.map() を使用して、ある LiveData を別の LiveData に変換します。 アプリの概要 今回は、前回のコードラボに続き、スコアの上に表示…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day16【LiveData and LiveData observers編】

学ぶこと LiveData オブジェクトが役立つ理由 ViewModel に保存されているデータに LiveData を追加する方法 MutableLiveData をいつどのように使用するか LiveData の変更を監視するための observer method を追加する方法 バッキングプロパティを使用して …

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day15【ViewModel編】

学ぶこと 推奨される Android app architecture を使用方法 アプリで Lifecycle、ViewModel、および ViewModelFactory クラスを使用する方法。 device-configuration の変更を通じて UI データを保持する方法 factory method デザインパターンとは何か、およ…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day14【Complex lifecycle situations編】

学ぶこと ライフサイクルコールバックでアプリの一部を設定、開始、停止する方法 Android ライフサイクルライブラリを使用してライフサイクルオブザーバーを作成し、activity と fragment のライフサイクルを管理しやすくする方法 Android プロセスのシャッ…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day13【Lifecycles and logging編】

学ぶこと Log 情報を Logcat(Android console または Android monitor と呼ばれることもあります)に出力する方法。 Activity と Fragment のライフサイクルの基本、および activity が状態間を移動する時に呼び出されるコールバック ライフサイクルコールバ…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day12【Start an external Activity編】

学ぶこと Bundle クラスを使用して、ある Fragment から別の Fragmen に引数を渡す方法 タイプセーフのために Safe Args Gradle プラグインを使用する方法 Share menu item をアプリに追加する方法 implicit intent とは何か、それを作成する方法 すること N…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day11【Define navigation paths編】

学ぶこと navigation graphs の使用方法 アプリで navigation path を定義する方法 Up button とは何か、および button を追加する方法 オプションメニューの作成方法 navigation drawer を作成する方法 すること navigation library と Navigation Editor …

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day10【Create a fragment編】

学ぶこと Fragment を静的にアプリに追加する方法 すること Activity 内に Fragment を作成します アプリの概要 このレッスンを構成する3つのコードラボでは、AndroidTrivia というアプリで作業します。完成したアプリは、ユーザが Android コーディングに…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day9【Codelabs 2-3編】

学ぶこと アプリで ConstraintLayout を使用して View を配置する方法 TextView の背景色を変更する方法 ベースライン制約を使用して View を text の位置に合わせる方法 View のグループから horizontal チェーンと vertical チェーンを作成する方法 するこ…

iOSDC2020 の1日目振り返り

今日も前夜の記事に続きiOSDC2020のセッションを聞けた範囲でおもしろかったもののまとめをしておこうと思います。 ※ よかったら毎日ブログ書いてるので、暇な時に見てください yamato8010.hatenablog.com 4年間運用されて表示速度が低下した詳細画面を改善…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day8【Codelabs 2-4編】

学ぶこと Data Binding ライブラリを使用して、findViewById() への非効率な呼び出しを排除する方法 XML からアプリデータに直接アクセスする方法 すること findViewById() の代わりにデータバインディングを使用し、レイアウト XML から直接データにアクセ…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day7【Codelabs 2-2編】

前回に続き、今回は Codelabs2-2 をやっていきたいと思います‍ 学ぶこと EditText view を使用してユーザ入力を取得する方法 EditText view のテキストを使用して、TextView にテキストを設定する方法 View および ViewGroup の操作方法 View の可視性を変更…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day6【Codelabs 2-1編】

前回に続き今回は、Codelabs Kotlin の02.1 をやっていきたいと思います 学ぶこと view と ViewGroup の操作方法 LinearLayout を使用して、Activity の View を配置する方法 ScrollView を使用してスクロール可能なコンテンツを表示する方法 View の開始性…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day5【Codelabs 1-5編】

学ぶこと Kotlin および Android の開発者向け情報とリソースの入手先 アプリのランチャーアイコンを変更する方法 Kotlin をしようして Android アプリ構築をしている時にヘルプを探す方法 やること 全てのレベルの Kotlin Android 開発者が利用できるリソー…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day4【Codelabs 1-3編】

前回のコードラボに続き、今回は01.3のコードラボを学習していきたいと思います。 前回の記事 yamato8010.hatenablog.com 学ぶこと アプリのリソースにファイルを追加する方法 アプリのレイアウトで画像を使用する方法 アプリのコードで View をより効率的に…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day3【Codelabs 1-2編】

前回のコードラボに続き、今回のコードラボでは、Android アプリの主要なコンポーネントの詳細を学び、ボタンを追加してアプリに簡単なインタラクティブ機能を追加していきます。 yamato8010.hatenablog.com 学ぶこと アプリのレイアウトファイルを編集する…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day2【Codelabs 1-1編】

今後の学習の方針として、Google が提供している Android アプリ作成のチュートリアルである Codelabs を使用して勉強していきたいと思います。このサイトは基本的には英語でのチュートリアルとなっているので、日本語に直したもの + 自分なりのコメント、ま…

知識ゼロからの Kotlin Android アプリリリースへの軌跡 / Day1【とりあえずコード書いてみる編】

この記事でできるもの Kotlin を Mac でとりあえず動かすための環境構築ができる Kotlin を使ってコンソールに文字を出力できる Kotlin を使った基本的な構文がちょっとわかる 手順 JDK(Java Development Kit)のインストール Kotlin のプログラムを実行する…