Android Kotlin基礎講座 10.3:利用者に向けたデザイン
目次
まとめ
RTL言語のサポート
- Android Manifest内で、android:supportsRtl=”true”を設定する。
- エミュレータ―でRTLのプレビューができます。またお好きな言語を使って画面のレイアウトを確認できます。
実機、またはエミュレータ―で設定を開き、Developer Options(開発者オプション)のForce RTL layoutを選択します。 - LeftとRightへの参照はStart、Endに置き換えます。
- android:autoMirrored=”true”を削除することでドローアブルのミラーリングを無効にします。
- Refactor > Add RTL support where possibleを選択することで、Android Studioにタスクをこなさせることができます。
- values-“language code”フォルダを利用して、その言語用のリソースを保存しておきます。
アクセシビリティ検査
- Play StoreでAccessibility Scanner by Google LLC(ユーザー補助検証ツール)をダウンロードし、画面の要素をスキャンして改良に役立てることができます。
コンテンツの説明文を使ったTalkBackへの対応
- TalkBackを含んでいるAndroid Accessibility Suite(Android ユーザー補助設定ツール)をインストールします。
- 全てのUI要素にコンテンツの説明文を追加します。例えばandroid:contentDescription=”@string/stage_image_description”です。
- EditTextのような編集可能な要素に対しては、android:hint属性をXMLに追加し、ユーザーが何をタイプすべきかを伝えるヒントを提供します。
- 関連する要素をビューグループに包むことで、コンテンツグループを作成します。
- ライブリージョンを作成し、android:accessibilityLiveRegionを用いてユーザーに追加のフィードバックを提供できます。
フィルタリングを実装するためのチップの仕様
- チップは属性、テキスト、エンティティ、アクションなどを表すコンパクトな要素です。
- チップのグループを作成するには、com.google.android.material.chip.ChipGroupを使用します。
- com.google.android.material.chip.Chip用のレイアウトを定義します。
- チップの色を変更したい場合は、状態に応じた<selector>として色のリストを設定します。
<item android:color=”?attr/colorPrimaryVariant” android:state_selected=”true” /> - オブザーバーをビューモデル内のデータに追加することで、チップをLive Dataとバインドすることができます。
- チップを表示するには、チップグループ用のインフレーターを作成します。
LayoutInflater.from(chipGroup.context) - チップを作成し、お望みのアクションを起動させるクリックリスナーを追加し、チップをチップグループに追加します。
ダークモードへの対応
- DayNight AppThemeを使ってダークモードに対応させます。
- ダークモードをプログラムから設定することもできます。AppCompatDelegate.setDefaultNightMode()
- res/values-nightリソースフォルダを作成して、ダークモード用のカスタムカラーや値を提供することができます。
お疲れさまでした。これで全ての講座は終了です。
これからの有意義なAndroidアプリ開発への補助となれば幸いです。
おすすめ書籍
Kotlinの文法をまず学びたい!という方には以下の書籍がおすすめです。Kotlinは日本語書籍がまだ豊富とは言えない状況ですが、細かく解説されており、Kotlin入門者のかたでもつまずくことなく学習できると思います。
[itemlink post_id=”1743″]実際にアプリを作りながら覚えていきたい!という方には以下もお勧めです。はじめに上の書籍で文法をさらっと学んでから取り組むのがお勧めです。
[itemlink post_id=”1745″]