Первый пост. Я новичок в разработке программного обеспечения в целом и потратил часы, пытаясь понять эту часть. Как вы можете видеть, я конвертирую double
в String
, а затем присваиваю это значение textResult
(String
). Я отформатировал его правильно, чтобы отобразить десятичные числа, но я не могу понять, как отображать как валюту.Отображение формата валюты Выпуск
Основываясь на том, что я нашел в Интернете, это выглядит как я, возможно, придется использовать
NumberFormat nf = NumberFormat.getCurrencyInstance(Locale.US);
, а затем использовать nf.format()
так или иначе, но он просто не работает для меня. Любое руководство будет высоко оценено.
public void onCalculateDealOne(View v) {
//get values from text fields
EditText priceEntry = (EditText) findViewById(R.id.etListPriceDealOne);
EditText unitsEntry = (EditText) findViewById(R.id.etNumberOfUnitsDealOne);
EditText couponEntry = (EditText) findViewById(R.id.etCouponAmountDealOne);
//get value from result label
TextView result = (TextView) findViewById(R.id.perUnitCostDealOne);
//assign entered values to int variables
double price = Double.parseDouble(priceEntry.getText().toString());
double units = Double.parseDouble(unitsEntry.getText().toString());
double coupon = Double.parseDouble(couponEntry.getText().toString());
//create variable that holds the calculated result and then do the math
double calculatedResultDealOne = (price - coupon)/units;
//convert calculatedResult to string
String textResult = String.format("%.3f", calculatedResultDealOne);
result.setText(textResult + " per unit");
dealOneValue = calculatedResultDealOne;
//hide the keyboard
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
//make deal one label visible
result.setVisibility(View.VISIBLE);
}