【问题标题】:Appcrash: How to delete a character in edittext by pressing delete button?Appcrash:如何通过按删除按钮删除edittext中的字符?
【发布时间】:2019-08-21 07:06:56
【问题描述】:

edittext 只有一个字符限制,一个删除按钮删除edittext 中的字符,但问题是当我按下空edittext 中的删除按钮时。应用程序崩溃。

我使用了下面的代码,但是当我在空的 edittext 中单击 del btn 时,应用程序崩溃了。

del.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        String text = et1.getText().toString();
                        et1.setText(text.substring(0, text.length() - 1));
                    }
                });

此错误显示在 logcat 中。

IInputConnectionWrapper: endBatchEdit on inactive InputConnection

请帮助我。提前致谢

【问题讨论】:

    标签: java android crash android-edittext


    【解决方案1】:

    但问题是当我在空的编辑文本中按下删除 btn 时。应用程序崩溃。

    是的,因为你试图做一个空的substring,这就是它崩溃的原因,为了避免它,只需在执行如下操作之前添加一个if条件:

    del.setOnClickListener(new View.OnClickListener() {
       @Override
       public void onClick(View v) {
          String text = et1.getText().toString();
          if(!text.isEmpty()) et1.setText(text.substring(0, text.length() - 1));
       }
    });
    

    【讨论】:

      【解决方案2】:

      试试这个代码

      String text = et1.getText().toString();
                            if(!text.isEmpty())
                           {
                              et1.setText(text.substring(0, text.length() - 1));
                           } 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-26
        • 2016-04-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-29
        相关资源
        最近更新 更多