1

私は2つの出力(ガスの総コストと総ガロン)を持つガス計算機をプログラミングしています。「$」を前に置くが、前には置かないようにするにはどうすればよいtotalCostですtotalGasか?

また、エミュレータでプログラムを実行しているときに、リセットボタンをクリックすると、プログラムが強制的に閉じられ、FATAL EXCEPTION: mainエラーが発生します。

編集:私はそれを理解しました。リセットボタンでmyClickHandlerをインポートするのを忘れました。

これがjavaファイルです:

package com.example.gas;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import com.example.gas.R;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity 
{

    private EditText totalMiles;
    private EditText price;
    private EditText mpg;
    private TextView totalGas;
    private TextView totalCost;

    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        totalMiles = (EditText) findViewById(R.id.milesTxt);
        totalCost = (EditText) findViewById(R.id.costTxt);
        totalGas = (EditText) findViewById(R.id.gasTxt);
        price = (EditText) findViewById(R.id.priceTxt);
        mpg = (EditText) findViewById(R.id.mpgTxt);
    }

    public void myClickHandler(View view)
    {
        NumberFormat nf = new DecimalFormat("#,###.00");
        switch (view.getId())
        {
            case R.id.calcBtn:
                float inputMiles = Float.parseFloat(totalMiles.getText().toString());
                float inputMPG = Float.parseFloat(mpg.getText().toString());
                float inputPrice = Float.parseFloat(price.getText().toString());
                float result1 = inputMiles/inputMPG;
                String output1 = nf.format(result1);
                totalGas.setText(output1);
                float result = result1 * inputPrice;
                String output = nf.format(result);
                totalCost.setText(output);
                break;

            case R.id.resetBtn:
                totalMiles.setText("");
                totalCost.setText("");
                totalGas.setText("");
                price.setText("");
                mpg.setText("");
                break;
        }
    }
}
4

1 に答える 1

0

String変数の前に追加する必要があります。

totalCost.setText(output);

totalCost.setText("$"+output);
于 2012-12-05T20:07:47.690 に答える