我有在EDITTEXT格式化數字的問題。我希望用戶能夠輸入一個數字作爲一個任意正或負整數(5或-5),併爲它格式化爲十進制(05)。目前,它的格式爲.05.0,而不是.05,我無法弄清楚原因。此外,如果用戶輸入錯誤的文本或離開字段空白我想設置editText爲「0」。但是,我得到一個錯誤。任何幫助不勝感激。我如何格式化數字解析並傳遞給editText?
public void checkPremium(){
double number = Double.parseDouble(premium.getText().toString());
if(premium.getText().toString().equals(".")||premium.getText().toString().equals("-.")||premium.getText().toString().equals("")){
premium.setText("0");
}else if(number >= 1 || number < 10){
premium.setText(".0"+number);
}else if(number >= 10){
premium.setText("."+number);
}else if(number <= -1 || number > -10){
premium.setText(".0"+Math.abs(number));
}else if(number <= -10){
premium.setText("."+Math.abs(number));
}else if(number <1 || number >0){
//Do Nothing
}
}
你也可能要改變||進入第二和第四個條件的&& – cosmincalistru 2012-07-24 06:33:02