I would like to use the AccessibilityDelegateCompatto adjust the the content of the AccessibilityEvent.
I've seen various example but I am not sure why I am not able to append to the voice over output.
This is the full code
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_more, container, false);
ViewCompat.setAccessibilityDelegate(mProfilePic,new AccessibilityDelegateCompat(){
@Override
public void sendAccessibilityEvent(View host, int eventType) {
super.sendAccessibilityEvent(host, eventType);
}
@Override
public void sendAccessibilityEventUnchecked(View host, AccessibilityEvent event) {
event.getText().add("TEST");
super.sendAccessibilityEventUnchecked(host, event);
}
@Override
public boolean dispatchPopulateAccessibilityEvent(View host, AccessibilityEvent event) {
event.getText().add("TEST");
return super.dispatchPopulateAccessibilityEvent(host, event);
}
@Override
public void onPopulateAccessibilityEvent(View host, AccessibilityEvent event) {
event.getText().add("TEST");
super.onPopulateAccessibilityEvent(host, event);
event.getText().add("TEST");
}
@Override
public void onInitializeAccessibilityEvent(View host, AccessibilityEvent event) {
event.getText().add("TEST");
super.onInitializeAccessibilityEvent(host, event);
}
@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) {
super.onInitializeAccessibilityNodeInfo(host, info);
}
@Override
public boolean onRequestSendAccessibilityEvent(ViewGroup host, View child, AccessibilityEvent event) {
event.getText().add("TEST");
return super.onRequestSendAccessibilityEvent(host, child, event);
}
@Override
public AccessibilityNodeProviderCompat getAccessibilityNodeProvider(View host) {
return super.getAccessibilityNodeProvider(host);
}
@Override
public boolean performAccessibilityAction(View host, int action, Bundle args) {
return super.performAccessibilityAction(host, action, args);
}
});
return view;
}
As seen I have tried adding my content in various places.
Note that the mProfilePic has content description set in XML. I would like to add to the existing content description but in code.