我正在开发Android辅助功能服务。我得到了代表EditText的AccessibilityNodeInfo。是否有可能编辑包含的文本?
我尝试使用mynode.setText("aaa")
,但我按照官方文档[{3}}
IllegalStateException
有什么想法吗? 感谢
答案 0 :(得分:14)
您可以将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);
}