Android Lint contentDescription警告

我得到警告作为“[可访问性] imageview丢失imageDescription属性”。 同时使用android lint

那是什么意思?

通过为我的ImageView设置属性android:contentDescription解决了此警告

 android:contentDescription="@string/desc" 

ADT 16中的Android Lint支持会引发此警告,以确保图像小部件提供contentDescription。

这定义了简要描述视图内容的文本。 该属性主要用于可访问性。 由于某些视图没有文字表示,因此可以使用此属性来提供此类属性。

像ImageViews和ImageButtons这样的非文本小部件应该使用contentDescription属性来指定小部件的文本描述,以便屏幕阅读器和其他辅助工具可以充分描述用户界面。

禁用Lint警告很容易让你后来陷入麻烦。 你最好指定所有ImageView的contentDescription。 如果你不需要描述,那就使用:

 android:contentDescription="@null" 

另一个select是单独禁止警告:

 xmlns:tools="http://schemas.android.com/tools" (usually inserted automatically) tools:ignore="contentDescription" 

例:

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:ignore="contentDescription" > <ImageView android:layout_width="50dp" android:layout_height="match_parent" android:adjustViewBounds="true" android:padding="5dp" android:src="@drawable/icon" /> 

我build议你添加contentDescription。

 android:contentDescription="@string/contentDescriptionXxxx" 

但是,让我们现实一点。 大多数人不保持文字的可访问性。 尽pipe如此, 你可以毫不费力地实施一些东西来帮助残疾人。

 <string name="contentDescriptionUseless">deco</string> <string name="contentDescriptionAction">button de action</string> <string name="contentDescriptionContent">image with data</string> <string name="contentDescriptionUserContent">image from an other user</string> 

盲人用户需要知道的最重要的事情是“我需要点击哪个button才能继续”

使用contentDescriptionAction来进行任何可点击的操作。

使用contentDescriptionContent图像的信息(graphics,textAsImage,…)

为所有用户提供的内容使用contentDescriptionUserContent。

使用contentDescriptionUseless其余的。

既然这只是一个警告,你可以压制它。 转到您的XML的graphics布局,并执行此操作:

  1. 点击右上angular的红色button

    在这里输入图像说明

  2. select“禁用问题types”(例如)

    在这里输入图像说明