如何在焦点和任何键盘键被按下时清除EditText

问题描述 投票:1回答:1

我正在尝试清理EditText,当它有焦点并出现软键盘并按下任何键。我正在使用OnFocusChangeListener方法来检测EditText何时具有焦点,但我不知道如何在同一方法中实现键盘事件。

谁能帮我?谢谢。亲切的问候

android android-edittext keyboard
1个回答
1
投票

您也可以使用Edittext的setOnFocusChangeListener

 private boolean isFirstTime = true;

    FIRST_EDITTEXT.addTextChangedListener(new TextWatcher() {
        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
              if(s.toString().length()>0 && isFirstTime ){
                FIRST_EDITTEXT.setText("");
                isFirstTime = false;
               }
        }

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

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

现在,如果我们是SECOND EditText,我们将真正的isFirstTime布尔值,对于First EditText,如下所示。

 SECOND_EDITTEXT.addTextChangedListener(new TextWatcher() {
            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {

                isFirstTime = true;

            }

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

            @Override
            public void afterTextChanged(Editable s) {
            }
        });
© www.soinside.com 2019 - 2024. All rights reserved.