我正在开发一个 Android 无障碍服务。我得到了一个表示 EditText的AccessibilityNodeInfo 。是否可以编辑包含的文本?
我试过了,mynode.setText("aaa")
但我得到IllegalStateException
了官方文档http://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.html中的描述
有任何想法吗?谢谢
我正在开发一个 Android 无障碍服务。我得到了一个表示 EditText的AccessibilityNodeInfo 。是否可以编辑包含的文本?
我试过了,mynode.setText("aaa")
但我得到IllegalStateException
了官方文档http://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.html中的描述
有任何想法吗?谢谢
您可以将 ACTION_SET_TEXT用于 >= android 21。这是它的示例:
AccessibilityNodeInfo source = event.getSource();
if (source != null & event.getClassName().equals("android.widget.EditText")) {
Bundle arguments = new Bundle();
arguments.putCharSequence(AccessibilityNodeInfo
.ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE, "android");
source.performAction(AccessibilityNodeInfo.ACTION_SET_TEXT, arguments);
}