简体   繁体   中英

Can't get Double output in TextView

The main purpose of this Android app is to learn how to use spinners and parse data. I have tried a lot of things and it still is not working. I don't get the output of the resultFuel on the screen.

Here's the code in my MainActivity :

public class MainActivity extends Activity implements OnItemSelectedListener {

Spinner spinFrom,spinTo;

String[] paths ={"liters/100km","liters/100 miles","(US)gallons/100 miles","(US)gallons/100km","(UK)gallons/100miles",
        "(UK)gallons/100km","kilometers/liter","miles/liter", "miles/gallon", "kilometers/gallon"
};

EditText etfrom;
TextView textview;
double fromFuel,resultFuel;
Button clik;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    spinFrom = (Spinner) findViewById(R.id.fromSpinner);
    spinTo = (Spinner) findViewById(R.id.toSpinner);

    etfrom = (EditText) findViewById(R.id.fromET);
    textview = (TextView) findViewById(R.id.Results);
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_spinner_item,paths);
    spinFrom.setAdapter(adapter);
    spinTo.setAdapter(adapter);

    spinFrom.setOnItemSelectedListener(this);
    spinTo.setOnItemSelectedListener(this);

    if( etfrom.length() == 0 || etfrom.equals("") || etfrom == null){

    }
    clik = (Button) findViewById(R.id.button1);
    clik.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            if(selectedFrom.equals(selectedTo)){
                //Do nothing
            }else if(selectedFrom.equals("liters/100km")&& selectedTo.equals("liters/100 miles")){

                fromFuel= Double.parseDouble(etfrom.getText().toString());
                resultFuel = fromFuel* 1.61;
            //  String result = String.valueOf(resultFuel);

                textview.setText("" +resultFuel );

            }else{

            }
        }
    });

}

String selectedFrom;
String selectedTo;

@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
        long arg3) {
    // TODO Auto-generated method stub
    selectedFrom = spinFrom.getItemAtPosition(arg2).toString();
    selectedTo = spinTo.getItemAtPosition(arg2).toString();

    Toast.makeText(getBaseContext(),"From: " + selectedTo, Toast.LENGTH_LONG).show();
}

@Override
public void onNothingSelected(AdapterView<?> arg0) {
    // TODO Auto-generated method stub

}

}

请试试 :

 textview.setText(Double.toString(resultFuel) );

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM