Decimali

di il
1 risposte

Decimali

Ragazzi sono impantanato con questo codice, devo modificare Double. Ho fatto una marea di prove e non sono riuscito. Voglio ottenere solo 2 cifre dopo la virgola...allo stato attuale se in ingresso inserisco 1.10 ottengo 1.100000023841858.

private class Dettaglio {
		 
		double entrate, uscite, risparmio;
		
	}

public View getView(int position, View convertView, ViewGroup parent) {
				View row = super.getView(position, convertView, parent);
				
				Log.v("Bilancio", "Creo elemento in posizione "+position);
				
				String month = new DateFormatSymbols(Locale.getDefault()).getMonths()[position];
				TextView tvMonth = (TextView) row.findViewById(R.id.tv_mese);
				tvMonth.setText(month);
//////////////////////				//tv con le somme////////////////////////////////////
				TextView tvEntrate, tvUscite, tvRisparmio;
				tvEntrate = (TextView) row.findViewById(R.id.tv_entrata);
				tvEntrate.setTextColor(Color.GREEN);
				
				tvUscite = (TextView) row.findViewById(R.id.tv_uscita);
				tvUscite.setTextColor(Color.RED);
				
				tvRisparmio = (TextView) row.findViewById(R.id.tv_risparmio);
				tvRisparmio.setTextColor(Color.YELLOW);
				
				Dettaglio d = dettagli.get(position);
				tvEntrate.setText(d.entrate+"");
				tvUscite.setText(d.uscite+"");
				tvRisparmio.setText(d.risparmio+"");
				return row;
			}
		};
		lista.setAdapter(adapter);
		
		//Calcolo il totale annuale
		double totaleE = 0, totaleU = 0, totalerisparmio = 0, val = 0, val1 = 0;
		for (Dettaglio d : dettagli){
			totaleE += d.entrate;
			totaleU += d.uscite;
			
		}
		
		TextView riepilogoE = (TextView) findViewById(R.id.tv_riepilogo_entrate);
		riepilogoE.setTextColor(Color.GREEN);
		
		TextView riepilogoU = (TextView) findViewById(R.id.tv_riepilogo_uscite);
		riepilogoU.setTextColor(Color.RED);
		
		TextView risp = (TextView) findViewById(R.id.tv_riepilogo_risparmio);
		risp.setTextColor(Color.YELLOW);
		
		riepilogoE.setText(""+totaleE);
		riepilogoU.setText(""+totaleU);
		
		val = Double.parseDouble(riepilogoE.getText().toString());
		val1 = Double.parseDouble(riepilogoU.getText().toString());
		
		totalerisparmio = val - val1;
		
		risp.setText(""+totalerisparmio);

	private void showDetails(String anno){
		SQLiteDatabase db = new BilancioHelper(this).getReadableDatabase();
		final List<Dettaglio> dettagli = new ArrayList<Bilancio.Dettaglio>(12);
		
		for (int i=1; i<=12; i++){
			String mese;
			if (i<10){
				mese = "0"+i;
			} else {
				mese = ""+i;
			}
			String sql = "SELECT SUM(Entrata), SUM(Uscita), SUM(Entrata)-SUM(Uscita) FROM Giornate WHERE data LIKE '"+anno+"-"+mese+"%'";
			Cursor c = db.rawQuery(sql, null);
			
			while (c.moveToNext()){
				Dettaglio d = new Dettaglio();
				d.entrate = c.getFloat(0);
				d.uscite = c.getFloat(1);
				d.risparmio = c.getFloat(2);
				
				dettagli.add(d);
			}
			c.close();
		}
		
		db.close();
		

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte