WebAIM - Web Accessibility In Mind

E-mail List Archives

Re: Android app accessibility

for

From: Renato Iwashima
Date: Aug 23, 2016 1:40PM


> 1) Is there a way to get Talkback to announce the current field on
launch? Or give simple instructions?

You can use announceForAccessibility() to do this. One note: if you are
moving the focus when the activity starts, I'd recommend to not do it. Let
the default accessibility focus behavior do its job: let the first swipe to
be a focus on the first element following reading order (left to right, top
to bottom).

> 2) The username and password fields do not have visible labels, just
field hints. Since it's a simple login form, perhaps this is not critical
but it would be nice. The developers don't want to add labels. Is there a
way to provide invisible labels in Android? There's a workaround discussed
at http://www.last-child.com/accessible-android-inputs-with-material-design/,
but they note there seems to be a bug in Android below 5.0 where the
workaround does not work, so I can't recommend it.

You could use android:labelFor on a transparent TextView, but it's a hack.
I'd still recommend to use TextInputLayout because the floating label is
persistent.

This example does not cause any problems to me on M or N (make sure hint is
in the text input layout and not in the edit text, make sure you are using
TextInputEditText and not EditText and make sure you are using the latest
version of the support design library):

<android.support.design.widget.TextInputLayout
android:id="@+id/forms_email_text_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/layout_padding"
android:labelFor="@+id/forms_email_edit_box"
android:accessibilityLiveRegion="polite"
android:hint="@string/edit_text_email_label"
app:errorTextAppearance="@style/ErrorText"
app:errorEnabled="true">

<android.support.design.widget.TextInputEditText
android:id="@+id/forms_email_edit_box"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"/>

</android.support.design.widget.TextInputLayout>

I hope it helps and let me know if you have any problems or questions.


On Tue, Aug 23, 2016 at 10:06 AM, Marc Solomon < <EMAIL REMOVED> >
wrote:

> Here is a link to the accessibility documentation for Android developers:
> https://developer.android.com/guide/topics/ui/accessibility/index.html.
>
> And, here is a free tool to perform an automated accessibility test of an
> Android app: https://play.google.com/store/apps/details?id=com.google.
> android.apps.accessibility.auditor.
>
> HTH,
> Marc
>
>