2010-12-12 15 views
12

Ich möchte die Art Editable von einem Android EditText auf den Typ integer konvertieren Mathematik Operationen auf eine Benutzereingabe Nummervon Editierbare Konvertieren in int android

Ich habe versucht, folgendes zu tun:

int x=(int)R2.getText().toString(); 

aber es gibt mir einen Fehler von kann eine Zeichenfolge nicht in int konvertieren.

Antwort

4

Versuchen Integer.ParseInteger(R2.getText())

+0

lol, ich schrieb es nur nach unten und erfrischt den Pfosten, und ich fand Sie die gleiche Sache schrieb :) – sherif

+0

Es war etwas, was ich wusste, dass doesn‘ t passiert zu viel :-D – iarwain01

+0

Dies funktioniert nicht für die Editable von TextEdit zurückgegeben. – EtienneSky

20

Fein, bekam ich die Antwort:

int x = Integer.parseInt(R2.getText().toString()); 
+0

+1 - markieren Sie dies als die Antwort – Onimusha

1

I

verwendet
int x = Integer.getInteger(R2.getText().toString()); 

parseInteger wäre für mich nicht.

6

Verwenden parseInt(), wie dies -

intX = Integer.parseInt(myEditWidget.getText().toString()); 

Die getText() Methode (die von Ihrem EditText Widget aus der View() Klasse geerbt wird) gibt ein Objekt vom Typ Editable, die in einen String-Typ konvertiert werden müssen, bevor parseInt() kann damit umgehen.

Beachten Sie, dass selbst wenn Ihr EditText-Widget mit der android:inputType="number" definiert ist, Sie die Ausnahme (NumberFormatException) abfangen möchten, die parseInt löst, um sicherzustellen, dass der Wert in ein int passt!

0

Mein Programm funktioniert so:

int age = 0; 

final EditText txt_age = (EditText) findViewById (R.id.editTextAge); 


String str_age = txt_age.getText().toString(); 

age = Integer.valueOf(str_age);