Zajmuję się usługą Android Accessibility Service. Dostałem AccessibilityNodeInfo, który reprezentuje EditText. Czy istnieje możliwość edycji zawartego tekstu?Ustaw tekst w AccessibilityNodeInfo
Próbowałem z mynode.setText("aaa")
ale ja dostać IllegalStateException
w sposób opisany w dokumentacji urzędowej http://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.html
Jakieś pomysły? Dzięki
Nie, to nie jest możliwe, aby ustawić zawartość w EditText z AccessibilityService wykorzystaniem AccessibilityNodeInfo. Węzły dostępności są przeznaczone wyłącznie do odczytu informacji i wykonywania niewielkiego zestawu działań (patrz AccessibilityNodeInfo.performAction). Można jednak wykonać za pomocą edytora IME. – alanv
@alanv, jak byś to zrobił? – r2DoesInc
Wygląda na to, że się myliłem. Od wersji API 18 możesz użyć ACTION_PASTE, aby wstawić tekst z ClipboardManager. W połączeniu z akcjami wyboru tekstu można skutecznie edytować część tekstu; jednakże interfejs API nie był do tego przeznaczony i może nie działać dobrze. – alanv