java - 使用 android 软键盘更改键入的字符

标签 java android android-edittext android-softkeyboard

当用户在 EditText 中键入一个句子时,我如何替换一些字符?例如,当用户键入“Hello”时,立即变为“Hella”!我想在用户输入时更改一些字符

最佳答案

您必须使用文本观察器。 etMessage 是一个 EditText,看这段代码:

    etMessage.addTextChangedListener(new TextWatcher() {

        @Override
        public void onTextChanged(CharSequence s, int start, int before,
                int count) {

        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count,
                int after) {

        }

        @Override
        public void afterTextChanged(Editable s) {
            String myString = s.toString();
            Toast.makeText(getApplicationContext(), myString,
                    Toast.LENGTH_SHORT).show();
            if (myString.length() > 0)
                if (myString.charAt(myString.length() - 1) == 'o') {
                    etMessage.setText("Hello");
                }
        }
    });

关于java - 使用 android 软键盘更改键入的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9806731/

相关文章:

android - EditText 焦点消失,条码扫描器读取条码时

java - Eclipse 的代码搜索功能如何工作?

java - 在 Java 中使用值列表选择用于组织数据的数据结构

android - 从服务恢复开始的 Activity

android - 使用 BottomSheetBehavior 显示 fragment

Android 错误与 Edittext MaxLines

java - 如何将字符串拆分为所有可能的 n 元语法/所有可能的 6 元语法

java - 当我长按 GridView 中的项目时,如何在 Android 应用程序上显示对话框?

android - 使用 navigateUpFromSameTask() 从 Activity 返回

Android 键盘隐藏 EditText