Activity wechseln per Button

  • Antworten:7
Martin Furi
  • Forum-Beiträge: 5

18.11.2015, 18:40:17 via Website

Hallo liebe Community,
ich habe aktuell ein Problem undzwar ich möchte wenn man auf den "BACK" Button drückt das man zurück zur MainActivity kommt von der CreditsActivity.
Die Funktion funktioniert aus welchen Gründen auch immer nicht.
Per Button in die Credits komme ich (ist ja der gleiche Befehl) aber der "Back" Button funktioniert nicht um ins Hauptmenü wieder zu kommen!

Ich bitte um Hilfe.
Mfg Martin.

Antworten
Martin Furi
  • Forum-Beiträge: 5

18.11.2015, 18:41:37 via Website

package dryellooow.mlg9996;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class CreditsActivity extends AppCompatActivity {

Button back;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_credits);

    back = (Button) findViewById(R.id.back);


    back.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            setContentView(R.layout.activity_main);

        }
    });







}

}

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

18.11.2015, 18:44:54 via Website

Hallo Martin,
vielleicht solltest du dich etwas mehr einlesen.
Du hat einen Back Button er aber keines Falls einfach das Menü wieder aufruft, osndern auf click des Buttons setzt du das Lyout des Menüs in die aktuelle Activity.
Das ist ja nicht das was du willst.
Du könntest z.b. die Methode finish() nutzen, diese beendet die aktuelle Activity und geht in die Main bzw. die Letzte rein.

LG Pascal //It's not a bug, it's a feature. :) ;)

Martin Furi

Antworten
Martin Furi
  • Forum-Beiträge: 5

18.11.2015, 19:01:33 via Website

image

So? Funktioniert immer noch nicht :(
Habe es schon einmal probiert aber funktioniert immer noch nicht...

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

18.11.2015, 19:05:03 via App

Wie sieht denn deine MainActivity aus?
Mach vlt. mal nen Toast in den click Listener damit du weisst dass er auch aufgerufen wird

LG Pascal //It's not a bug, it's a feature. :) ;)

Martin Furi

Antworten
Martin Furi
  • Forum-Beiträge: 5

18.11.2015, 19:36:42 via Website

Komisch ist die Toast Meldung erscheint nicht...
Hier mal die 2 activitys von der Main und Credits.

image


image

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

18.11.2015, 20:33:52 via App

ist klar typischer Anfänger fehler ;)

Du startest in der Main Activity keine 2. also wird die 2. nie aufgerufen.
Schau die mal die Mehode startActivity an.

LG Pascal //It's not a bug, it's a feature. :) ;)

Martin Furi

Antworten
Martin Furi
  • Forum-Beiträge: 5

18.11.2015, 21:31:25 via Website

[[cite Pascal P.]]
Du startest in der Main Activity keine 2. also wird die 2. nie aufgerufen.
Schau die mal die Mehode startActivity an.

Danke hat geklappt :D Recht Simpel wenn man drauf kommt ^^
Für alle die auch das Problem haben die Lösung hier ein Beispiel was er meint:

In der MainActivity (meine 1te Seite) beim Button als Funktion das Hinterlegen:

    credits.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    int ce = v.getId();

                    if(ce == R.id.credits){
                        Intent intent = new Intent(MainActivity.this, CreditsActivity.class);
                        startActivity(intent);
                    }


                }
    });

So habe ich es gemacht man kann (muss) natürlich nach Geschmack es anders machen.
Dann funktioniert auch die 2te Activity zu schließen mit finish(); weil nur durch der Funktion wird erst die 2te Activity geöffnet.

Also zusammengefasst die Lösung: startActivity als Funktion für den Button geben.

— geändert am 18.11.2015, 21:32:53

Antworten