键入时如何使编辑文本提示消失?

时间:2014-12-19 08:59:24

标签: android string android-edittext textwatcher

我有生日的编辑文字字段。

我希望将DD/MM/YYYY日期格式显示为提示。此外,我不希望它在焦点集中的那一刻消失。

我希望在键入时将提示文本替换为数字,当删除数字时,提示文本必须重新出现。因此,在键入字符串的过程中,就像25/04/1YYYDD/11/1989等等。 我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

试试这个:

final EditText date = new EditText(this);
date .setHint("DD/MM/YYYY");
date .setTextColor(Color.BLACK);


                    date .setOnTouchListener(new OnTouchListener() {

                        @Override
                        public boolean onTouch(View v, MotionEvent event) {
                            date .setText("");
                            return false;
                        }
                    });

答案 1 :(得分:0)

以下是文本观察者的概念,您可以从中获取帮助

 protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        txtEdit = (EditText) findViewById(R.id.editText1);
        viewText = (TextView) findViewById(R.id.text);

         txtEdit.addTextChangedListener (new TextWatcher() {

              public void beforeTextChanged(CharSequence s, int start, int count, int after) {
                  Log.i("TC", "beforeTC " + s.toString() + " "
                          + s.subSequence(start, start + count).toString());
              }

              public void onTextChanged(CharSequence s, int start, int before, int count) {
                  Log.i("TC", "onTC " + s.toString() + " "
                          + s.subSequence(start, start + count).toString());
              }

              public void afterTextChanged(Editable s) {
                  Log.i("TC", "afterTC " + s.toString());
              }
         });
    }