1. 程式人生 > >EditText禁止輸入空格和回車

EditText禁止輸入空格和回車

    EditText經常會禁止輸入一些字元,例如,不允許輸入空格,不允許回車。

    1.不允許輸入空格,這裡我們採用對EditText新增輸入監聽:

//監聽輸入框禁止輸入空格
editText.addTextChangedListener(new TextWatcher() {

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

        if (s.toString().contains(" ")) {
            String[] str = s.toString().split(" ");
            String str1 = "";
            for (int i = 0; i < str.length; i++) {
                str1 += str[i];
            }
            et_content.setText(str1);
            et_content.setSelection(start);

        }

    }

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

    }

    @Override
    public void afterTextChanged(Editable s) {
    }
});

    2.不允許使用回車鍵,獲取到動作識別符號,如果值等於EditorInfo.IME_NULL,則回車鍵被按下,然後進行事件處理,不讓其進行:

// 監聽回車鍵
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
        return event != null && (event.getKeyCode() == KeyEvent.KEYCODE_ENTER);
    }
});