0

我创建了一个将美元转换为欧元的应用程序,要求在没有输入任何内容时,它不会出现结果。我这样编码:

case R.id.main_btn_convert:

        String input = mTvBaseCurrency.getText().toString();


        if (input.matches("")) {
            Toast.makeText(this, "Type the number!", Toast.LENGTH_SHORT).show();
            mTvBaseCurrency = null;

            Log.i("String", ",asdkns,adkjsahd ");
            break;
        }

        else {


            String url = currencyUtils.createUrl(strBase, strTarget, input);
            Log.i("String", "url= " + url);

            currencyUtils.handlerJson(url);

            String result = currencyUtils.getStringResult();
            Log.i("String ", "result" + result);

            mTvTargetCurrency.setText("" + result);
            break;
        }

问题开始出现,第一次点击(没有输入数据),它确定,但是当第二次点击它有错误:强制关闭应用程序。这是我的 logcat http://s17.postimg.org/6uaprjm5b/Untitled.png 请帮我解决这个问题。

4

1 回答 1

2

问题是你设置mTvBaseCurrency为 null 如果它通过了matches("")。只需删除以下行:

mTvBaseCurrency = null;
于 2013-04-25T02:34:13.603 回答