Question

I have a ListView that has an adapter with custom views in it. The custom view extends from RelativeLayout.

This view reports accessibility events from the text correctly if it is inside another View. If I add it to a ListView or a ViewPager, all of the custom views no longer provide accessibility events when TalkBack is enabled.

Why don't my custom views work correctly inside a ListView?

Was it helpful?

Solution

It turns out that if you assign a click listener to your View that's in a ListView or a ViewPager, you stop the accessibility events from propagating to those children.

Long story short, use setOnItemSelectedListener instead of setOnClickListener.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top