停止应用程序崩溃时提交订单与空EditText



我最近开始学习编程,我正在写一个咖啡订购应用程序。我有一个"价格"字段,您输入一杯咖啡和其他一些选项的基本价格。现在,如果我在价格字段为空时点击"订单"按钮,应用程序就会崩溃。我试图从问题中添加代码行,是否有可能在EditText中同时具有默认值和提示。这是计算价格的方法的代码位,复选框是咖啡浇头的复选框,功能良好:

// Calculates the price
private int calculatePrice(int quantity) {
    // Price per cup in field
    EditText pricePerCupF = (EditText) findViewById(R.id.basic_price);
    boolean whippedChecked = ((CheckBox) findViewById(R.id.whipped_cream)).isChecked();
    boolean chocolateChecked = ((CheckBox) findViewById(R.id.chocolate)).isChecked();
    int pricePerCup = Integer.parseInt(pricePerCupF.getText().toString());
    if (whippedChecked) {
        pricePerCup += 1;
    }
    if (chocolateChecked) {
        pricePerCup += 1;
    }
    if (pricePerCupF.getText().toString().equals("")) {
        return 0;
    }
    else {
        int price = pricePerCup * quantity;
        return price;
    }

谢谢!

Put

 if (pricePerCupF.getText().toString().equals("")) {
        return 0;
 }

之前
 int pricePerCup = Integer.parseInt(pricePerCupF.getText().toString());

这样,如果字段为空,您可以在解析/强制转换错误出现之前退出函数。

最新更新