Konvertieren Sie die Nummer in der Textansicht in int

Also, ich verwirre mich mit Java / Android Programmierung und gerade jetzt versuche ich einen wirklich einfachen Taschenrechner zu machen. Ich bin auf diese Frage aufgehängt. Dies ist der Code, den ich jetzt habe, um die Nummer zu bekommen, die in der Textansicht ist und macht es zu einem int

CharSequence value1 = getText(R.id.textView); int num1 = Integer.parseInt(value1.toString()); 

Und von dem, was ich sagen kann, ist die zweite Zeile, die den Fehler verursacht, aber ich bin nicht sicher, warum es das tut. Es ist gut, aber wenn es versucht, diesen Teil des Programms laufen zu lassen, stürzt es meine App ab. Und das einzige, was in der Textansicht ist, ist Zahlen

  • Java-Optimierungen: Bytecode-only vs JIT
  • Android Fehler beim Aufblasen der Klasse SwipeRefreshLayout
  • POJOs gegen Cursors in Android
  • Kann nicht aufCreateOptionsMenu in ListFragment überschreiben
  • Eclipse Android AVD Emulator zeigt keine Schaltflächen für benutzerdefinierte Auflösung Skin
  • Google+ Plattform für Android - NoClassDefFoundError: com.google.android.gms.samples.plus.SignInActivity
  • Irgendein Rat?

    Ich kann auch mehr von meinem Code, wenn nötig

  • Viewpager + FragmentpagerAdapet + Fragmente + Listview = wahnsinnig langsame App
  • Welches ist der beste Weg, um zwischen Service und Aktivität zu kommunizieren?
  • View Instanz von RemoteViews
  • Singleton in Android
  • TextView horizontale Mitte in RelativeLayout
  • Was ist die Syntax für "nicht gleich" in SQLite?
  • 3 Solutions collect form web for “Konvertieren Sie die Nummer in der Textansicht in int”

    Sie können die Verwendung von TextView lesen .

    Wie erkläre ich es:

     TextView tv; 

    Initialisieren:

     tv = (TextView) findViewById(R.id.textView); 

    oder:

     tv = new TextView(MyActivity.this); 

    Oder, wenn Sie ein Layout aufblasen,

     tv = (TextView) inflatedView.findViewById(R.id.textView); 

    Um einen String in tv setzen, tv.setText(some_string) oder tv.setText("this_string") . Wenn Sie einen Integer-Wert setzen müssen, verwenden Sie tv.setText("" + 5) als setText () ist eine überladene Methode, die String und int Argumente behandeln kann.

    Um einen Wert aus dem tv benutze tv.getText() .

    Überprüfen Sie immer, ob der Parser die möglichen Werte verarbeiten kann, die textView.getText().toString() liefern kann. Eine NumberFormatException wird ausgelöst, wenn Sie versuchen, einen leeren String ("") zu analysieren. Oder wenn du versuchst zu analysieren . .

     String tvValue = tv.getText().toString(); if (!tvValue.equals("") && !tvValue.equals(......)) { int num1 = Integer.parseInt(tvValue); } 
     TextView tv = (TextView)findviewbyID(R.id.textView); int num = Integer.valueOf(tv.getText().toString()); 
     TextView tv = (TextView)findviewbyID(R.id.textView); String text = tv.getText().toString(); int n; if(text.matches("\\d+")) //check if only digits. Could also be text.matches("[0-9]+") { n = Integer.parseInt(text); } else { System.out.println("not a valid number"); } 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.