从android可访问性的标签设置contentDescription

Kai*_*Kai 3 android accessibility

虽然常量contentDescription适用于某些小部件,但其他情况(例如带有标题的图库)已在UI中具有适当的可访问性标签.有什么办法来链接的ImageView的contentDescription,其标注Textview的XML?

例如,这个ImageView定义的最后一个(虚构)行是否有真正的等价物:

<LinearLayout>
    <ImageView
        android:id="@+id/image"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:contentDescription="@+id/label" />
    <TextView
        android:id="@+id/label"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

Eri*_*ric 11

如果您已经知道了它的价值TextView,您可以使用:

<LinearLayout>
    <ImageView
        android:id="@+id/image"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:contentDescription="@string/some_str" />
    <TextView
        android:id="@+id/label"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/some_str" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

但是,如果您以TextView编程方式设置内容,则需要对ImageView内容描述执行相同操作.(参见本文档.)

String desc = "Foo Bar";
yourTextView.setText(desc);
yourImageView.setContentDescription(desc);
Run Code Online (Sandbox Code Playgroud)