在Eclipse中开始使用Android Lint工具后,我收到了许多新的警告。其中一个是说我的ImageViews缺少contentDescription。
对于常规的ImageViews,我这样做,效果很好:
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
android:contentDescription="@string/imgViewDesc"
....
</ImageView>
但是,如果我有一个使用样式xml文件的ImageView,比如:
<ImageView
style="@style/TitleBarLogo"
android:src="@drawable/title_logo" />
如果我在styles.xml中有这个:
<style name="TitleBarLogo">
<item name="android:contentDescription">@string/imgViewDesc</item>
....
</style>
警告不会消失。
有什么办法解决这个问题吗?
请参阅http://tools.android.com/tips/lint
我认为你把contentDescription放在一个样式中是在规避它的目的。contentDescription用于识别图像以便于访问。通过将其推迟到样式中,您就失去了这个contentDescription描述这个特定图像的推断。