Rechner

  • 13 Antworten
  • Neuester Beitrag
Diskutiere Rechner im Android App Entwicklung im Bereich Betriebssysteme & Apps.
K

Keybladmaster

Neues Mitglied
Hey, Hey

Probiere gerade einen rechner zu Schreiben.
Aber Scheitere daran Zahl1 + Zahl2 zu Rechnen
hier der Code :

Bekomme auch den Fehler(Rot unterstrichen)
Das Fett Gedruckte!

Code:
public void ButtonOnClick(View view) {
        
        int num01;
        int num02;
        
        [B]num01 = Integer.parseInt(Zahl1.getText().toString());
          num02 = Integer.parseInt(Zahl2.getText().toString());[/B]
        
        EditText Zahl1 = (EditText)findViewById(R.id.editText1);
        EditText Zahl2 = (EditText)findViewById(R.id.editText2);
        EditText Ergebniss = (EditText)findViewById(R.id.EditText01);
        
        Ergebniss.setText(num01 + num02);
        
    }
Wo ist das Problem?

LG Keybladmaster
 
StefMa

StefMa

Experte
 
K

Kollen

Gast
Keybladmaster schrieb:
Code:
        [B]num01 = Integer.parseInt(Zahl1.getText().toString());
          num02 = Integer.parseInt(Zahl2.getText().toString());[/B]
        
        EditText Zahl1 = (EditText)findViewById(R.id.editText1);
        EditText Zahl2 = (EditText)findViewById(R.id.editText2);
Schau dir bitte diese Stelle genau. Hinweis -> NullPointerException.
 
Zuletzt bearbeitet von einem Moderator:
A

amfa

Experte
Ergebniss.setText(num01 + num02);

Dürfte so auch nicht funktionieren, da setText(int) eine ResourcenId erwartet die du hier aber vermutlich nicht haben wirst (ausser es wird zufällig eine berechnet)

Also musst du dein Ergebnis vorher auch noch in String umwandeln.

@Kollen
Das ist nicht mal NullPointerException an der Stelle. ;)
Da ist einfach gar kein Pointer :D

@Keyblademaster:
Du nutzt an der Stelle z.B. Zahl1 obwohl du das erst in den Zeilen danach definierst.
Womit programmierst du eigentlich?
Eigentlich sollte dir deine Entwicklungsumgebung doch relativ genau anzeigen was falsch ist.
 
K

Keybladmaster

Neues Mitglied
:cursing: Oh, man -,-

Manchmal bin echt ein bisschen doof :D

Habe das ganze kurz Geändern.
Aber Sobald ich auf den Button Klicke der 1 + 1 rechnen
soll wird die App Beendet!

Benutze Eclipse.

Code:
public void ButtonOnClick(View view) {                  

int num01;         
int num02;
                   
EditText Zahl1 = (EditText)findViewById(R.id.editText1);         
EditText Zahl2 = (EditText)findViewById(R.id.editText2);         
EditText Ergebniss = (EditText)findViewById(R.id.EditText01);         
        
num01 = Integer.parseInt(Zahl1.getText().toString());         
num02 = Integer.parseInt(Zahl2.getText().toString());
       
 Ergebniss.setText(num01 + num02);              
}
Wie Konvertiere ich Int to String?
mit ValueOf ?

LG Keybladmaster
 
Zuletzt bearbeitet:
A

amfa

Experte
Ich zitiere mich mal selbst:
amfa schrieb:
Ergebniss.setText(num01 + num02);

Dürfte so auch nicht funktionieren, da setText(int) eine ResourcenId erwartet die du hier aber vermutlich nicht haben wirst (ausser es wird zufällig eine berechnet)
Im übrigen wäre es gut, wenn du auch die entsprechende Fehlermeldung posten würdest, wobei ich mir die gerade denken kann.

Versuch's mal mit String.valueOf(num01 + num 02)

Mit setText kannst du entweder ein String setzen oder aber eine ID aus deinen resourcen verwendenm, sobald du da eine zahl reinsetzt sucht er nach einer Resource und findet keine, deswegen wird deine App wohl abstürzen.
 
K

Keybladmaster

Neues Mitglied
Danke, Danke!

Hatte schon so ein Gedanken mit ValueOf.
Sollte es vorher ausprobieren....
Bevor ich wieder erst Frage!

LG Keybladmaster
 
S

Speedy1985

Neues Mitglied
Guten Abend!

nachdem dieser Thread das Stichwort zu meinem Problem bildet, hoffe ich dass es Recht ist, wenn ich meine Frage zum Thema Taschenrechner gleich anfüge zumal das Problem des Kollegen anscheinend soweit geklärt ist.

Also ich versuche meine ersten Gehversuche unter Anderem auch an einer Taschenrechner-App.

Leider zeigt das Handy beim Starten nur kurz einen weißen Screen und beendet die App sofort darauf wieder.

Ich hab angeblich irgendwo eine NullPointerException laut LogCat.
Weiß aber nicht wo der Fehler liegt. Ich hab den Quelltext sowie die Log-Datei mal angehängt.

Vielen Dank im Voraus!

Gruß Christian
Code:
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]package[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2][COLOR=#7f0055]
[LEFT][/COLOR][/SIZE][SIZE=2]com.example.taschenrechner;[/SIZE][/LEFT]
 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]import[/COLOR][/SIZE][/COLOR][/SIZE][/B][/LEFT]
[SIZE=2][COLOR=#7f0055]
 
[LEFT][/COLOR][/SIZE][SIZE=2]android.app.Activity;[/SIZE]

[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]import[/COLOR][/SIZE][/COLOR][/SIZE][/B][/LEFT]
[SIZE=2][COLOR=#7f0055]
 
[LEFT][/COLOR][/SIZE][SIZE=2]android.os.Bundle;[/SIZE]

[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]import[/COLOR][/SIZE][/COLOR][/SIZE][/B][/LEFT]
[SIZE=2][COLOR=#7f0055]
 
[LEFT][/COLOR][/SIZE][SIZE=2]android.view.Menu;[/SIZE]

[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]import[/COLOR][/SIZE][/COLOR][/SIZE][/B][/LEFT]
[SIZE=2][COLOR=#7f0055]
 
[LEFT][/COLOR][/SIZE][SIZE=2]android.view.View;[/SIZE]

[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]import[/COLOR][/SIZE][/COLOR][/SIZE][/B][/LEFT]
[SIZE=2][COLOR=#7f0055]
 
[LEFT][/COLOR][/SIZE][SIZE=2]android.view.View.OnClickListener;[/SIZE]

[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]import[/COLOR][/SIZE][/COLOR][/SIZE][/B][/LEFT]
[SIZE=2][COLOR=#7f0055]
 
[LEFT][/COLOR][/SIZE][SIZE=2]android.widget.Button;[/SIZE]

[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]import[/COLOR][/SIZE][/COLOR][/SIZE][/B][/LEFT]
[SIZE=2][COLOR=#7f0055]
 
[LEFT][/COLOR][/SIZE][SIZE=2]android.widget.EditText;[/SIZE]

[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]import[/COLOR][/SIZE][/COLOR][/SIZE][/B][/LEFT]
[SIZE=2][COLOR=#7f0055]
 
[LEFT][/COLOR][/SIZE][SIZE=2]android.widget.TextView;[/SIZE][/LEFT]
 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]public[/COLOR][/SIZE][/COLOR][/SIZE][/B][/LEFT]
[SIZE=2][COLOR=#7f0055]
 
[LEFT][/COLOR][/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]class[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] MainActivity [/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]extends[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] Activity [/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]implements[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] OnClickListener{[/SIZE][/LEFT]
 

[LEFT][SIZE=2][COLOR=#3f7f5f][SIZE=2][COLOR=#3f7f5f]// Definition [U]der[/U] [U]Objekte[/U] [U]und[/U] [U]Variablen[/U][/COLOR][/SIZE][/COLOR][/SIZE]
[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] EditText [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] EditText [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] Button [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bPlus[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] Button [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMinus[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] Button [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMal[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] Button [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bGeteilt[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] TextView [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]tvGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] Button [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bBerechnen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]int[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = 0;[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]int[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = 0;[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] String [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]""[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]float[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]fErgebnis[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = 0;[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] String [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]""[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][SIZE=2][COLOR=#646464][SIZE=2][COLOR=#646464]@Override[/COLOR][/SIZE][/COLOR][/SIZE]
[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]protected[/COLOR][/SIZE][/COLOR][/SIZE][/B][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]void[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] onCreate(Bundle savedInstanceState) {[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]super[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2].onCreate(savedInstanceState);[/SIZE]
[SIZE=2]setContentView(R.layout.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]activity_main[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][SIZE=2][COLOR=#3f7f5f][SIZE=2][COLOR=#3f7f5f]// [U]Verknüpfen[/U] [U]der[/U] [U]Objekte[/U] [U]mit[/U] den Views[/COLOR][/SIZE][/COLOR][/SIZE]
[LEFT][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (EditText)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert1[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (EditText)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert2[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bPlus[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (Button)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bPlus[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMinus[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (Button)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMinus[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMal[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (Button)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bGeteilt[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]tvGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (TextView)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]tvGleichung[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bBerechnen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (Button)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bBerechnen[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][SIZE=2][COLOR=#3f7f5f][SIZE=2][COLOR=#3f7f5f]// [U]Zuordnen[/U] [U]von[/U] OnClickListenern [U]zu[/U] den Buttons[/COLOR][/SIZE][/COLOR][/SIZE]
[LEFT][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bPlus[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].setOnClickListener([/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]this[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMinus[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].setOnClickListener([/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]this[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMal[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].setOnClickListener([/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]this[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bGeteilt[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].setOnClickListener([/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]this[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bBerechnen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].setOnClickListener([/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]this[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2]);[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][SIZE=2][COLOR=#646464][SIZE=2][COLOR=#646464]@Override[/COLOR][/SIZE][/COLOR][/SIZE]
[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]public[/COLOR][/SIZE][/COLOR][/SIZE][/B][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]boolean[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] onCreateOptionsMenu(Menu menu) {[/SIZE]
[SIZE=2][COLOR=#3f7f5f][SIZE=2][COLOR=#3f7f5f]// Inflate the menu; this adds items to the action bar if it is present.[/COLOR][/SIZE][/COLOR][/SIZE]
[SIZE=2]getMenuInflater().inflate(R.menu.[/SIZE][/LEFT]
[/LEFT]

 
[LEFT][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]main[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2], menu);[/SIZE]

[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]return[/COLOR][/SIZE][/COLOR][/SIZE][/B][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]true[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2];[/SIZE]
[LEFT][SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][SIZE=2][COLOR=#646464][SIZE=2][COLOR=#646464]@Override[/COLOR][/SIZE][/COLOR][/SIZE]
[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]public[/COLOR][/SIZE][/COLOR][/SIZE][/B][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]void[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] onClick(View v) {[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] ([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].getText().toString().equals([/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]""[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]) || [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].getText().toString().equals([/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]""[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]))[/SIZE]
[LEFT][SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = Integer.[I]valueOf[/I]([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].getText().toString());[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = Integer.[I]valueOf[/I]([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].getText().toString());[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] (v.getId()==R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bPlus[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2])[/SIZE]
[LEFT][SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" + "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] (v.getId()==R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMinus[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2])[/SIZE]
[LEFT][SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" - "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] (v.getId()==R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMal[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2])[/SIZE]
[LEFT][SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" * "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] (v.getId()==R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bGeteilt[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2])[/SIZE]
[LEFT][SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" : "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" = ?"[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[LEFT][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]tvGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].setText([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]);[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] (v.getId()==R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bBerechnen[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2])[/SIZE]
[LEFT][SIZE=2]{[/SIZE]
[B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] ([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] == [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" + "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2])[/SIZE]
[SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]fErgebnis[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] ([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] == [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" - "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2])[/SIZE]
[LEFT][SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]fErgebnis[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] - [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] ([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] == [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" * "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2])[/SIZE]
[LEFT][SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]fErgebnis[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] * [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]if[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] ([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] == [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" : "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2])[/SIZE]
[LEFT][SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]fErgebnis[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] / [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sRechenzeichen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]iWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + [/SIZE][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]" = "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]fErgebnis[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE]
[LEFT][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]tvGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2].setText([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]sGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]);[/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][SIZE=2]}[/SIZE]
[LEFT][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]else[/COLOR][/SIZE][/COLOR][/SIZE][/B]
[SIZE=2]{[/SIZE]
[SIZE=2][COLOR=#3f7f5f][SIZE=2][COLOR=#3f7f5f]// [U]hier[/U] [U]soll[/U] [U]mal[/U] [U]ein[/U] [U]Popup[/U] [U]hin[/U], [U]dass[/U] in [U]einem[/U] [U]der[/U] [U]beiden[/U] [U]Werte[/U] [U]nichts[/U] [U]eingegeben[/U] [U]ist[/U][/COLOR][/SIZE][/COLOR][/SIZE]
[SIZE=2]}[/SIZE][/LEFT]
[/LEFT]

 

[LEFT][SIZE=2]}[/SIZE][/LEFT]

 

[LEFT][SIZE=2]}[/SIZE][/LEFT]
LogCat:​

05-11 23:41:05.611: E/AndroidRuntime(27111): FATAL EXCEPTION: main
05-11 23:41:05.611: E/AndroidRuntime(27111): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.taschenrechner/com.example.taschenrechner.MainActivity}: java.lang.NullPointerException
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2110)
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2135)
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.app.ActivityThread.access$700(ActivityThread.java:140)
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1237)
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.os.Handler.dispatchMessage(Handler.java:99)
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.os.Looper.loop(Looper.java:137)
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.app.ActivityThread.main(ActivityThread.java:4921)
05-11 23:41:05.611: E/AndroidRuntime(27111): at java.lang.reflect.Method.invokeNative(Native Method)
05-11 23:41:05.611: E/AndroidRuntime(27111): at java.lang.reflect.Method.invoke(Method.java:511)
05-11 23:41:05.611: E/AndroidRuntime(27111): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1027)
05-11 23:41:05.611: E/AndroidRuntime(27111): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794)
05-11 23:41:05.611: E/AndroidRuntime(27111): at dalvik.system.NativeStart.main(Native Method)
05-11 23:41:05.611: E/AndroidRuntime(27111): Caused by: java.lang.NullPointerException
05-11 23:41:05.611: E/AndroidRuntime(27111): at com.example.taschenrechner.MainActivity.onCreate(MainActivity.java:46)
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.app.Activity.performCreate(Activity.java:5206)
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
05-11 23:41:05.611: E/AndroidRuntime(27111): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2074)
05-11 23:41:05.611: E/AndroidRuntime(27111): ... 11 more​
 
K

Kollen

Gast
Speedy1985 schrieb:
Code:
[LEFT][LEFT] [B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]private[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] Button [/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bGeteilt[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2];[/SIZE] <- Diesen button musst du auch wie die anderen unten initialisieren. Hast noch net gemacht deswegen kommt es ein NullpointerException wenn du einen onClickListener drauf setzt.



[LEFT][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert1[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (EditText)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert1[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert2[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (EditText)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]etWert2[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bPlus[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (Button)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bPlus[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMinus[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (Button)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMinus[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bMal[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (Button)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bGeteilt[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]tvGleichung[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (TextView)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]tvGleichung[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE]
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bBerechnen[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = (Button)findViewById(R.id.[/SIZE][I][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]bBerechnen[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2]);[/SIZE][/LEFT]
[/LEFT]
[/LEFT]
 
S

Speedy1985

Neues Mitglied
Oh man. Ja stimmt. Vielen Dank!

Darf ich fragen, nach welchem System du in diesem Fall bei der Fehlersuche vorgehst?

Ich kann mir aus LogCat nicht sonderlich viele Infos rausziehen außer dass irgendwo ne NullPointerException dabei ist.

Gruß Chris

Gesendet von meinem GT-I9100 mit der Android-Hilfe.de App
 
J

JanF

Stammgast
Code:
[LEFT] 05-11 23:41:05.611: E/AndroidRuntime(27111): Caused by: java.lang.NullPointerException
05-11 23:41:05.611: E/AndroidRuntime(27111): at com.example.taschenrechner.MainActivity.onCreate([COLOR=Red]MainActivity.java:46[/COLOR])
Hier wird Dir direkt die Klasse und die Zeilenzahl angezeigt, in der der Fehler auftritt.
Man lernt es recht schnell, diese Stacktraces zu lesen.
Erstmal ist es hilfreich, nach eigenen Klassen Ausschau zu halten.
[/LEFT]
 
K

Kollen

Gast
Hi,

bei einer NullPointerException gehe ich eigentlich mit dem debugger durch und sehe wo er sich befindet und wieso, aber bei deinem fall hab ich einfach dein
code druchgelesen und es ist mir aufgefallen, außerdem steht es auch das der nullpointer an der Zeile 46 sein muss.
 
S

Speedy1985

Neues Mitglied
Ah ok das mit der Zeilennummer hab ich verstanden.
Woher weiß ich denn, dass die Zeilenangabe zur NullPointerException gehört? Das sind doch meiner Ansicht nach 2 unterschiedliche Einträge im LogCat. ..

Gruß Chris

Gesendet von meinem GT-I9100 mit der Android-Hilfe.de App
 
S

swordi

Lexikon
ja sind 2 einträge im logcat aber gehört zu einem stacktrace

siehst ja dass das ein zusammengehörender block ist. deshalb gehört das zur nulllpointerexception

und du wirst eher net 2 exception stacktraces sehen, weil die app sich nach der ersten exception beendet