Android EditText: select all text while touch and clear when user starts typing.

前端 未结 6 1058
生来不讨喜
生来不讨喜 2021-02-19 03:28

I have a edit text in my app. When the user touches the edit text the whole text should be selected and when he starts typing text should be cleared. An example is browser addre

相关标签:
6条回答
  • 2021-02-19 04:02

    You can use property android:hint instead of android:text and you get what you want wihout special code.

    0 讨论(0)
  • 2021-02-19 04:07

    Add attribute to your main.xml file:

    android:selectAllOnFocus="true"
    

    Then all text will be selected and when user type something that will remove it.

    0 讨论(0)
  • 2021-02-19 04:09

    You can select all text in EditText by using android:selectAllOnFocus or setSelectAllOnFocus(boolean).

    Set a flag when all text is selected. Then detect a text change by using the addTextChangedListener method on your EditText and make your class implement or define an inner class implementing the TextWatcher class.

    In this watcher class method, check the flag you set to indicate whether all text is selected. if true, then do TextView.setText(""). This will clear the text. Now set the flag to false again so that subsequent text changes will not cause the text to be cleared.

    0 讨论(0)
  • 2021-02-19 04:13

    You can select all text in EditText by using

    android:selectAllOnFocus and also setSelectAllOnFocus(boolean)

    0 讨论(0)
  • 2021-02-19 04:15

    Call EditText.setSelectAllOnFocus(boolean selectAllOnFocus) to select all text on focus.

    Set a click listener to your EditText and in onClick call edittext.selectAll();

    0 讨论(0)
  • 2021-02-19 04:18

    This is working , all text will be selected and when user type something that will remove it.

                 editText.setSelectAllOnFocus(true);
    
                editText.requestFocus();
                editText.postDelayed(new Runnable() {
                    @Override
                    public void run() {
                        InputMethodManager keyboard = (InputMethodManager) catalougeJobDetailFragment
                                .getActivity().getSystemService(
                                        Context.INPUT_METHOD_SERVICE);
                        keyboard.showSoftInput(commentEt, 0);
                    }
                }, 20);
    
    0 讨论(0)
提交回复
热议问题