Warning 解消法

【Android Studio】contentDescription属性のWarning解消方法

Sara

この記事では ImageView や ImageButton に表示される contentDescription の Warning 解消法を紹介しています。

ImageView や ImageButton の色が変わっている部分にカーソルを合わせると Missing contentDescription attribute on image と表示されます。

これは contentDescription 属性がありませんという Warning です。

contentDescription 属性は「ImageView に指定している画像が何を意味するのか、どんな画像なのか」を示すものです。

TalkBack など目が不自由な方が使うユーザー補助機能を有効にしていると、この属性に指定した値が読み上げられる仕組みになっています。

この記事では2つの Warning の解消方法を紹介していますので、プロジェクトに合わせてお試しください。

Warning を消す方法

この Warning を消す方法は

  1. contentDescription 属性を付ける
  2. Warning を無視する

の2つがあります。

どちらの方法でも良いですが、画像が重要な意味を持っていたり、テキストコンテンツが多いアプリの場合は contentDescription 属性の使用を検討することをお勧めします。
 

① contentDescription 属性を付ける方法

ImageView の色が変わっている部分にカーソルを合わせると、左側に豆電球のアイコンが表示されるのでクリックします。

Set contentDesciption を選択します。

android:contentDescription=”” が追加されるので、画像の意味を表す適当な文字列を指定します。

今度は contentDescription の部分に Warning がついてしまいました。

カーソルを合わせてみると Hardcoded string “Icon”, should use “@string” resource と表示されます。

これは「文字列を直接書かずに string リソースを使うべきです」という Warning です。string リソースは strings.xml を指しているので、strings.xml に文字列を定義しましょう。

Android Studio 画面左側のプロジェクト構造から app → res → values → strings.xml を開きます。

strings.xml を開いたら文字列を定義します。name 値や文字列はプロジェクトに合わせて変更してください。

<string name="image_desc_icon">Icon</string>

xml ファイルに戻って、以下のように書き換えます。

android:contentDescription="@string/image_desc_icon"

以上で Warning を消すことができます。

② Warning を無視する方法

要素ごとに指定する

ImageView の色が変わっている部分にカーソルを合わせると左側に豆電球のアイコンが表示されるのでクリックします。

Suppress: Add ignore:tools=”contentDesciption” attribute を選択します。

contentDescription を ignore(無視する)コードが追加され、Warning が消えました。

一括指定する

複数の ImageView 要素を使用している場合、全てに tools:ignore=”contentDescription” を書くのが面倒なことがあります。

その場合は、ルート要素に一括指定することもできます。

まとめ

以上が ImageView を使用した時に出る Warning の解消法でした。

Warning はエラーとは違って、プログラムの動作自体に影響が出るわけではありませんが、全て解消しておいた方がコードがスッキリとして気持ちが良いものです。

Warning が出た場合はお試しください。

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
ABOUT ME
Sara
書籍やオンライン講座でプログラミングを勉強してフリーランスのプログラマーになりました。
このサイトでは「わかりやすく・シンプル」をモットーに、プログラミングの基礎からアプリ開発まで紹介します。
独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています。
主な使用言語:Java / Kotlin / PHP
>> 詳しいプロフィール
>> お問い合わせ
>> 書籍を出版しました!
本格的に学びたい方へ

Code for Fun プログラミング講座

Code for Fun プログラミング講座では、プログラミングの基礎からアプリ開発まで学ぶことができます。

わかりやすく・シンプルをモットーに

  • 同じコードを書けば必ず完成できること
  • 専門用語を使いすぎないこと

を重視しています。

POINT 01

動くコード

プログラミングの文法だけを学んでも、そこから動くアプリを開発をするのは難しいです。

Code for Fun のプログラミング講座では、ゲームやカレンダーなど「アプリとして機能するもの」を作りながらプログラミングを学ぶことができます。

POINT 02

自分のペースで

オンライン講座なので、ご自身のペースで学習を進めて頂けます。

分からないことがあっても、前のレッスンに戻ることができるので安心です。

お申し込みしたその日からからすぐに始めることができます。

POINT 03

個別サポート

プログラミング学習では、エラーが起きることはよくあります。そんな時はお気軽にお問い合わせください!

コメント欄またはメールによるサポートを回数無制限でご利用頂けます。(*講座に関連するご質問のみ対応)

今すぐ無料でお試し

0
この記事にコメントするx
記事URLをコピーしました