我最近在我的应用程序中添加了一个方法,该方法将自动格式化文本视图,让我们说:“50000”到“50,000”,这绝对是完美的。现在我遇到的问题是,在我的应用程序中有多个按钮功能可以从该文本视图中添加或删除某些数量,所以让我们说 textview =“5,000”,当您单击按钮时,它会删除“1000”问题是它强制关闭应用程序,因为从技术上讲,textview 不再是整数,而是字符串。这是代码和错误。
//formats the textview to show commas
double number = Double.parseDouble(textView1.getText().toString());
DecimalFormat formatter = new DecimalFormat("###,###,###");
textView1.setText(formatter.format(number));
Button btnremove1000 = (Button) findViewById(R.id.btnremove1000);
btnremove1000.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TextView textView1 = (TextView) findViewById(R.id.textView1);
int amount = Integer.parseInteger(textView1.getText()
.toString()) - 1000;
textView1.setText(String.valueOf(amount));
Toast msg = Toast.makeText(MainScreen.this,
"1,000 removed!", Toast.LENGTH_SHORT);
msg.show();
}
});
java.lang.NumberFormatException: Invalid int: "5,000"
现在我该如何做到这一点,以便我仍然可以显示逗号但添加和删除值?
我唯一能想到的是以某种方式删除逗号,添加/删除一个值,然后重新格式化它以再次显示逗号?