在AccessibilityNodeInfo中设置文本

时间:2013-03-21 20:55:25

标签: android accessibility

我正在开发Android辅助功能服务。我得到了代表EditText的AccessibilityNodeInfo。是否有可能编辑包含的文本?

我尝试使用mynode.setText("aaa"),但我按照官方文档[{3}}

中的说明获得IllegalStateException

有什么想法吗? 感谢

1 个答案:

答案 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);
}