只写EditText?

时间:2017-08-21 05:12:42

标签: java android

我有一个包含预定义词的EditText,

示例:

在此输入内容:blahblah

如何制作此EditText,以便他们无法删除“在此处输入内容:”部分但仍然输入响应而不使用单独的TextView?

谢谢。

2 个答案:

答案 0 :(得分:1)

您可以使用textChangedListener

执行此操作
final EditText edt = (EditText) findViewById(R.id.editText1);

edt.setText("Type something here:");
Selection.setSelection(edt.getText(), edt.getText().length());


edt.addTextChangedListener(new TextWatcher() {

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
            // TODO Auto-generated method stub

        }

        @Override
        public void beforeTextChanged(CharSequence s, int start, int count,
                int after) {
            // TODO Auto-generated method stub

        }

        @Override
        public void afterTextChanged(Editable s) {
            if(!s.toString().startsWith("Type something here:")){
                edt.setText("Type something here:");
                Selection.setSelection(edt.getText(), edt.getText().length());

            }

        }
    });

答案 1 :(得分:0)

你只需要在编辑文本中添加提示,这样当你写一些东西时提示不可见并删除那个时间显示提示的edittext中的所有文本。

<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:singleLine="true"
    android:hint="Type something here"/>