好的所以我想添加这个+/-按钮来改变当前在结果窗口中显示的数字的符号(一个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视图中获取字符串---> 把它变成双重的---> 反转,再将它放入一个字符串中,以便反转任何数字的符号。 ---> 在edittext视图中显示它。
但每当我点击按钮时,应用就会强行关闭......
出了什么问题?我认为逻辑是正确的,但很可能转换导致功能出现故障。 (虽然不确定)
你能发现可能造成这种情况的任何事情吗?
(这显然在活动类中定义了......)
编辑: 答案: EditTextMsg = editText.getText()。toString();
忘了添加这个-.-
答案 0 :(得分:2)
您尚未发布提取EditText
字符串值的方式。你用过......
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();
这里。希望这会有所帮助...
干杯!