目次
- 1この講座について
- 2イントロダクション
- 3前提知識
- 4この講座で学べること
- 5概要
- 6アプリの概観
- 7タスク:findViewById()を減らすためにデータバインディングを利用する
- 7.1ステップ1:データバインディングを有効にする
- 7.2ステップ2:データバインディングを利用できるようにレイアウトファイルを変更する
- 7.3ステップ3:Main Activityにバインディングオブジェクトを作る
- 7.4ステップ4:全てのfindViewById()の呼び出しをバインディングオブジェクトに置き換える
- 8タスク:データバインディングを使ってデータを表示する
- 8.1ステップ1:MyName dataクラスを作成する
- 8.2ステップ2:レイアウトにデータを追加する
- 8.3ステップ3:データを作成する
- 8.4ステップ4:TextViewのニックネーム用にdataクラスを使う
- 9完成済みプロジェクト
- 10まとめ
この講座について
この記事はAndroid Kotlin基礎講座の一部です。これ以外のAndroid Kotlin基礎講座(全10回)も一緒に受講することでAndroidアプリの開発手法、およびKotlinの基礎知識を学ぶことができます。全講座はAndroid Kotlin基礎講座にリスト化されていますので参考にしてください。
またこの記事ではGoogle Developers Training teamによってGoogle Codelabsに公開されているAndroid Kotlin Fundamentals courseを日本語に翻訳しつつ、筆者の考察も交えながら発信しています。オリジナルのサイト(英文)はこちら。
イントロダクション
レッスン2に含まれる記事は以下になります。
Android Kotlin基礎講座の前回の記事でビューの参照を得るためにfindViewById()関数を使用しました。開発中のアプリが複雑なビューヒエラルキー構造を持っているときには、findViewById()を使うと処理が遅く、アプリの動作が重くなってしまいます。findViewById()ではルートビューから検索をはじめるからです。そういった場合には、より適した方法があります。
前回まででビューにデータをセットするために、stringリソースを使ってアクティビティからそれをセットしました。ビューがデータについて事前に知っていたらそれをより効率的に行わせることができます。Android Studioではそれが可能なのです。
この記事では、findViewById()を使う必要を無くすためのデータバインディングの使い方を学習します。またビューから直接データにアクセスするためのデータバインディングの使い方についても学ぶことができます。
前提知識
- アクティビティについての基礎、またonCreate()からレイアウトと紐づいたアクティビティをセットアップする方法
- テキストビューを作成し、それが表示するテキストを設定する方法
- ビューの参照を取得するためのfindViewById()の使い方
- 基本的なXMLレイアウトの作り方と編集方法
この講座で学べること
- 非効率的なfindViewById()の呼び出しを削減するためのデータバインディングライブラリの使い方
- XMLから直接アプリのデータにアクセスする方法
概要
- findViewById()の代わりにデータバインディング合を使うようにアプリを修正、その後XMLレイアウトファイルからデータに直接アクセスさせる
コメント