JAVA - Android (Eclipse), int to float

Hallo Board...

Ich habe wiedereinmal ein Problem.
Und zwar habe ich eine Android-App gecoded basierend auf dem Einstiegstutorial von "Android 2: Grundlagen und Programmierung"
Da die Steuersätze in der Schweiz 8%, 3,8% und 2,5% sind, müssen diese im folgenden Code ja eigentlich als float definiert werden... aber wie?!

HTML:
        // Prozentwert Umsatzsteuer:
        final Spinner spinner = (Spinner) findViewById(R.id.sp_umsatzsteuer);
        
        // Position des ausgewählten Wertes: 1, 2 oder 3
        final int pos = spinner.getSelectedItemPosition();
        
        // Den Ausgewählten Wert (Text) in der ArrayListe (float)*PROBLEM* holen
        final int[] prozentwerte = getResources().getIntArray(R.array.ust_werte);
        
        // Zahl holen auf der Position "pos" in prozentwerte
        final int prozentwert = prozentwerte[pos];
          
        final Intent intent = new Intent(this, ErgebnisActivity.class);
        
        intent.putExtra(strBETRAG_KEY, betrag);
        intent.putExtra(strBETRAG_ART, isNetto);
        intent.putExtra(strUST_PRO, prozentwert);

Und hier die Array Liste:

HTML:
<resources>
  <array name="umsatzsteuer_view">
    <item>8 % (Normaler Satz)</item>
    <item>3.8 % (Sondersatz)</item> 
    <item>2.5 % (Reduzierte Satz)</item>
  </array>
  <array name="ust_werte">
    <item>8</item>
    <item>3.8</item>
    <item>2.5</item>        
  </array>
</resources>

Den normalen Integer (8) rechnet er, sobald aber 3.8 oder 2.5 % ausgewählt werden geht es nicht mehr, klar sie als INT geholt werden.

Ich weiss einfach nicht wie ich diese als Float holen kann :/


Grüsse,
MSeiz5


//Edit 01.06.11, 11:22
Habs hingekriegt:

HTML:
			// Prozentwert Umsatzsteuer:
			final Spinner spinner = (Spinner) findViewById(R.id.sp_umsatzsteuer);
        
			// Position des ausgewählten Wertes holen: 1, 2 oder 3
			final int pos = spinner.getSelectedItemPosition();
        
			
			TypedArray ar_ust_werte = getResources().obtainTypedArray(R.array.ust_werte);
			
			final float[] prozentwerte = new float[ar_ust_werte.length()];
			
			for (int i = 0; i < ar_ust_werte.length(); i++)
				prozentwerte[i] = ar_ust_werte.getFloat(i, 0.0f);
			
			// Zahl holen auf der Position "pos" in prozentwerte
			final float prozentwert = prozentwerte[pos];
          
			final Intent intent = new Intent(this, ErgebnisActivity.class);
        
			intent.putExtra(strBETRAG_KEY, betrag);
			intent.putExtra(strBETRAG_ART, isNetto);
			intent.putExtra(strUST_PRO, prozentwert);
 
Zuletzt bearbeitet:
Danke!

Hab mir diese Woche dasselber Buch gekauft (bin bis jetzt sehr zufrieden damit :wink:) und wollte das Beispiel auch genau so abändern, was auch bei mir nicht klappte.

Verstehe zwar immer noch nicht, weshalb es für die Ressourcen keine
Code:
 .getFloatArray
Methode gibt :rolleyes:, aber dank deinem Beitrag hat's dann doch geklappt. Merci! :thumb_up:
 
Zurück
Oben