diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java index 3135afa71120f5..bb559a64b61bc3 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java @@ -146,11 +146,22 @@ public void setViewStates(@Nonnull T view, @Nullable ReadableArray accessibility return; } view.setTag(R.id.accessibility_states, accessibilityStates); + view.setSelected(false); + view.setEnabled(true); + boolean shouldUpdateContentDescription = false; for (int i = 0; i < accessibilityStates.size(); i++) { String state = accessibilityStates.getString(i); if (sStateDescription.containsKey(state)) { - updateViewContentDescription(view); + shouldUpdateContentDescription = true; } + if (state.equals("selected")) { + view.setSelected(true); + } else if (state.equals("disabled")) { + view.setEnabled(false); + } + } + if (shouldUpdateContentDescription) { + updateViewContentDescription(view); } }