如何向EditText添加默认值:android

时间:2017-04-02 11:25:07

标签: android android-edittext

我有一个EditText,它在调用edittext.getText().toString()时返回一个空字符串。我想为这个结果设置一个默认值,而不是返回一个空字符串,我不希望在EditText中显示该值。有可能这样做吗?如果是,那我该怎么做?

3 个答案:

答案 0 :(得分:2)

  

是否可以这样做?

不,抱歉,EditText不提供该功能。

答案 1 :(得分:2)

虽然EditText不能为您做什么,但您可以随时扩展EditText并添加此行为:

public class MyOwnEditText extends EditText { ... }

覆盖getText()以返回默认值,如果默认实现返回空String

@Override 
public Editable getText() {
  Editable text = super.getText();
  if (!TextUtils.isEmpty(text)) {
    return text;
  }
  return new SpannableStringBuilder("default-text");
}

答案 2 :(得分:1)

处理此问题的一个好方法是使用ternary operator

String emailString = this.email.getText().toString();
return TextUtils.isEmpty(emailString) ? "your default string" : emailString;