# Error beim drücken der Zurück-Taste am Handy



## michi243 (20. Jan 2015)

Hey Leute, hat vielleicht jemand, der sich mit Java Programmierung auskennt, Zeit um eine Frage kurz zu klären. Ich programmiere ein App, wenn man die "Zurücktaste" am Handy drückt, sollte die SecondActivity beendet werden und die Main Activity wieder geöffnet werden. Bei der Main Activity muss man aber ein Wort (String eingeben) das dann in der SecondActivity verschlüsselt wird und den man erraten muss (Hangman) nun hab ich aber das Problem, dass wenn man die "Zurücktaste" drückt sich das Programm aufhängt, ich glaube, dass das mit dem String zusammenhängt. Nur weiß ich keinen vernüftigen Ansatz um das Problem zu lösen, wenn wer einen weiß, kann ich ihm das Programm auch bei Teamviewer genauer zeigen oder per E-Mail (einfach nur Nachricht schicken). Ansonst hier die Ausschnitte des Programmcodes:

MainActivity:


```
public void onStartClick(View view) {
        Intent intent = new Intent(this, SecondActivity.class);
        startActivity(intent);
        EditText text = (EditText) findViewById(R.id.editText);
        String message = text.getText().toString();
        laenge=message.length();
        intent.putExtra(MESSAGE1, message);
        startActivity(intent);}
```

SecondActivity:


```
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second_activity);
        drawPanel = (drawPanel) findViewById(R.id.drawPanel1); //DrawPanel initialisieren
        play();

    }
    public void play(){
        Intent intent = getIntent();
        msg = intent.getStringExtra(MainActivity.MESSAGE1); //eingegebenes Wort auslesen
        laenge = msg.length(); //Laenge bestimmen //CRASHED IN THIS LINE
        word = new char[100];
        buchstabe = new char[100];
        for (i = 0; i < laenge; i++) //Wort verschlüsseln
        {
            word[i] = '*';
        }
        TextView txt = (TextView) findViewById(R.id.outputText);
        txt.setText(String.valueOf(word));  //Verschlüsseltes Wort am Bildschirm anzeigen
        msglow = msg.toLowerCase();   //Wort auf kleinbuchstaben ausbessern
        wordarray = msglow.toCharArray(); //String to Char umwandeln
    }
```


----------



## dzim (24. Jan 2015)

Bitte den Stacktrace posten, die hier gezeigten Methoden helfen ohne den Stacktrace nichts.


----------



## RelaX (25. Jan 2015)

Überschriebe doch einfach die folgende Methode


```
@Override
public void onBackPressed() {
    //mach hier was du willst!

    finish()  // beendet die aktuelle Activity
}
```

Somit hast du bei diesem Event vollkommende Freiheit und kannst tun was auch immer du möchtest!

Ansonsten ist die onCreate() der MainActivity sehr wichtig um zu sehen wo genau dein Problem liegt.


----------

