0

好的,所以我想添加这个 +/- 按钮来更改结果窗口中当前显示的数字的符号(一个 EditText 组件)

这是按钮按下时的 OnClick 功能:

public void onClickListenerPM(View v) {
    vibrator.vibrate(30);
    if (press == '=') {
        onClickListenerReset(buttonReset);
    }

    double masag = -1 * Double.parseDouble(EditTextMsg);
    String s = Double.toString(masag);
    editText.setText(s);
}

我所做的是从 EditText 视图中取出字符串 ---> 将其变为双精度 ---> Reverse ,再次将其放入字符串中,以便反转任何数字的符号。---> 在edittext 视图中显示它。

但是每当我点击按钮时,应用程序强制关闭......

怎么了?我认为逻辑是正确的,但很可能是转换导致功能出现故障。(虽然不确定)

你能发现任何可能导致这种情况的原因吗?

(这显然是在活动类中定义的......)

编辑:答案:EditTextMsg = editText.getText().toString();

忘了添加这个-.-

4

1 回答 1

2

您尚未发布如何提取EditTextString 值。有没有用...

EditText edit = (EditText)findViewById(R.id.edit_text_id);
String editTextMsg = edit.getText().toString();

......toString在这里很重要!我宁愿使用而Double.toString()不是toString(double)

Double masag = -1 * Double.valueOf(editTextMsg);
String s = masag.toString();

这里。希望这可以帮助 ...

干杯!

于 2013-07-30T09:37:28.753 回答