2 回答

TA貢獻1802條經驗 獲得超6個贊
這意味著您嘗試將空String強制轉換為浮點數。
也許在這里: Float price = Float.parseFloat(priceString);
因此改寫為:
private void saveItemCheck() {
String nameString = mNameEditText.getText().toString().trim();
String priceString = mPriceEditText.getText().toString().trim();
String quantityString = mQuantityEditText.getText().toString().trim();
String supplierString = mSupplierEditText.getText().toString().trim();
String supplierNumberString = mSupplierNumberEditText.getText().toString().trim();
if (mCurrentInventoryUri == null &&
TextUtils.isEmpty(nameString) && TextUtils.isEmpty(priceString) &&
TextUtils.isEmpty(quantityString) && TextUtils.isEmpty(supplierString) &&
TextUtils.isEmpty(supplierNumberString)) {
return;
}
if (TextUtils.isEmpty(nameString) || TextUtils.isEmpty(priceString)
|| TextUtils.isEmpty(quantityString) || TextUtils.isEmpty(supplierString)
|| TextUtils.isEmpty(supplierNumberString)) {
Toast.makeText(this, "Please fill all the starred fields to save the product",
Toast.LENGTH_LONG).show();
} else {
Float price = Float.parseFloat(priceString);
int quantity = Integer.parseInt(quantityString);
saveItem(nameString, price, quantity, supplierString, supplierNumberString);
}
}

TA貢獻1757條經驗 獲得超7個贊
String priceString = mPriceEditText.getText().toString().trim();
if(!TextUtils.isEmpty(priceString))
Float price = Float.parseFloat(priceString);
String quantityString = mQuantityEditText.getText().toString().trim();
if(!TextUtils.isEmpty(quantityString))
int quantity = Integer.parseInt(quantityString);
您必須檢查edittext是否為空,而不是轉換為float的int之后
添加回答
舉報