【问题标题】:EditText.getText.toString() is returning empty stringEditText.getText.toString() 返回空字符串
【发布时间】:2020-11-23 10:50:05
【问题描述】:

我正在尝试从 EditText 恢复文本,但是当我 Toast 字符串时,我得到一个空字符串。

代码如下:

view =inflater.inflate(R.layout.fragment_home, container, false);
EditText id=view.findViewById(R.id.busID);
busId=id.getText().toString();
btn.setOnClickListener(new View.OnClickListener() {
     @Override
     public void onClick(final View view) {
          Toast.makeText(getContext(),busId,Toast.LENGTH_LONG).show();
     }
});

这是截图

请帮帮我。我不知道为什么它返回空字符串

【问题讨论】:

    标签: java android android-studio android-edittext android-toast


    【解决方案1】:

    您从EditText 中提取String 太早了。

    像这样更改您的代码:

    btn.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(final View view) {
              busId=id.getText().toString();
              Toast.makeText(getContext(),busId,Toast.LENGTH_LONG).show();
         }
    });
    

    【讨论】:

    • 不错的答案,但对提问者有一点建议,我建议使用有意义的变量名,因此 EditText id=view.findViewById(R.id.busID); 类似于 bus_edit_text 之类的东西。如果它是一个局部变量,它会被发现,但在大型项目中,这可能会导致问题,尤其是如果它被声明为全局变量。
    猜你喜欢
    • 2020-01-27
    • 2020-07-11
    • 2015-05-25
    • 2011-05-09
    • 1970-01-01
    • 2012-07-20
    • 2011-12-15
    • 2015-12-21
    • 2013-09-02
    相关资源
    最近更新 更多