我正在研究计算器,我遇到了一些问题。 当我尝试运行程序时,可以显示第一个屏幕让我输入数字(在我忽略了setText的最后2个代码的情况下)。 将数据放入Edittext字段并按下按钮后,它将被停止(不幸的是应用程序已停止)
下面显示的代码是在填写完所有信息后按下按钮时调用的方法,并且我在另一个方法中单独创建了公式(totalCost和profit变量)。
我不确定是否是将另一个方法的结果赋给变量的正确方法,并且不确定为什么setText
中的toString()方法不起作用(错误说双重不能是解除引用的)
以下是ref:
的代码public void sendInput(View view) {
EditText editTextPurPrice = (EditText) findViewById(R.id.editText_PP);
EditText editTextSelPrice = (EditText) findViewById(R.id.editText_SP);
EditText editTextStkQty = (EditText) findViewById(R.id.editText_QTY);
EditText editTextLotSize = (EditText) findViewById(R.id.editText_LS);
TextView resultTTCost = (TextView) findViewById(R.id.resultTTCost);
TextView resultProfit = (TextView) findViewById(R.id.resultProfit);
Double msgPurPrice = Double.parseDouble(editTextPurPrice.getText().toString());
Double msgSelPrice = Double.parseDouble(editTextSelPrice.getText().toString());
int msgStkQty = Integer.parseInt(editTextStkQty.getText().toString());
int msgLotSize = Integer.parseInt(editTextLotSize.getText().toString());
double totalCost = getTotalCost(msgPurPrice, msgSelPrice, msgStkQty, msgLotSize);
double profit = getProfit(msgPurPrice, msgSelPrice, msgStkQty, msgLotSize);
resultTTCost.setText(totalCost.toString());
resultProfit.setText(profit.toString());
}
希望有人可以帮助我...
答案 0 :(得分:3)
问题我的文字应该如下
resultTTCost.setText(""+totalCost);
resultProfit.setText(""+profit);
或
resultTTCost.setText(String.valueOf(totalCost));
resultProfit.setText(String.valueOf
答案 1 :(得分:1)
resultTTCost.setText(String.valueOf(totalCost));
resultProfit.setText(String.valueOf(profit));
您需要将double转换为String。另一个实现是这样的:
double aDouble = 0.11;
String aString = Double.toString(aDouble);