2017-11-08 18 views
0

私はEditTextを持っていて、ユーザがキーパッドの「done」ボタンを押したときに聞きたいのですが、ソフトキーパッドの「done」ボタンを押していないときにEditTextをクリアしたいと思います。EditTextの完了ボタンのリスナーと、完了ボタンを押していないときのEditTextをクリアしますか?

+0

「ユーザーが完了ボタンを押していないとき」とはどういう意味ですか、どのシナリオでEditTextをクリアしますか? – cherif

+0

@cherif:はい、EditTextをクリアします。 – Chunhua

答えて

0

以下のコードを使用し、ソフトキーボードのボタンを「完了」を押すユーザー確認するには:

edittext.setOnFocusChangeListener(new View.OnFocusChangeListener() { 
    @Override 
    public void onFocusChange(View view, boolean hasFocus) { 
     if(!hasFocus){ 
      edittext.setText(""); 
     } 
    } 
}); 
:以下のコードを使用して、フォーカスを変更した後のEditTextのテキストをクリアするには

edittext.setOnEditorActionListener(new TextView.OnEditorActionListener() { 
    @Override 
    public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) { 
     if(i== EditorInfo.IME_ACTION_DONE){ 
      Toast.makeText(getApplicationContext(),"Done pressed",Toast.LENGTH_SHORT).show(); 
     } 
     return false; 
    } 
}); 

+0

いつか、ユーザーは編集文脈を断念し、保存せずにソフトキーパッドを閉じたいと思う。 – Chunhua

+0

私のコードを更新しました。一度見てください。問題が解決された場合は、それを他人の正解を得るための回答としてマークしてください。 – androidOnHigh

+0

最初はどちらですか? 最初にsetOnFocusChangeListenerを配置するので、setOnEditorActionListenerは2番目です。 Edittextを入力して終了ボタンを押すと、 – Chunhua

関連する問題