Buttons richtig programmieren

  • 3 Antworten
  • Neuester Beitrag
Diskutiere Buttons richtig programmieren im Android App Entwicklung im Bereich Betriebssysteme & Apps.
F

Fabs44

Ambitioniertes Mitglied
Der Homescreen der App besteht aus Buttons, die dann die entsprechende Activity aufrufen.

Das Problem ist ich muss erst die im Code oberste Activity aufrufen und dann kann ich erst die zweite Activity aufrufen.

Das liegt vermutlich an dem Code, der immer mehr "nach rechts geht" (Fachwort fehlt mir(thinking)):

Code:
    package entwickler.tk.radioapp;



import android.content.Intent;

import android.support.v7.app.ActionBarActivity;

import android.os.Bundle;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;





public class Home extends ActionBarActivity {



    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_home);



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

        button2.setOnClickListener(new OnClickListener() {



            @Override

            public void onClick(View v) {



                Intent intent = new Intent(v.getContext(), Webseite.class);

                startActivityForResult(intent, 0);



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

                button.setOnClickListener(new OnClickListener() {

                    @Override

                    public void onClick(View v) {

                        Intent intent = new Intent(v.getContext(), Livestream.class);

                        startActivityForResult(intent, 0);



                        Button button = (Button) findViewById(R.id.button3);

                        button.setOnClickListener(new OnClickListener() {

                            @Override

                            public void onClick(View v) {



                                Intent intent = new Intent(v.getContext(), LiveChat.class);

                                startActivityForResult(intent, 0);



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

                                button8.setOnClickListener(new OnClickListener() {





                                    @Override

                                    public void onClick(View v) {

                                        Intent intent = new Intent(v.getContext(), Impressum.class);

                                        startActivityForResult(intent, 0);

                                    };

                                });

                            };

                        });

                    };

                });

            };

        });

    }

}



Wie mache ich das Richtig, sodass die alle auf "gleicher Höhe" sind?
 
Zuletzt bearbeitet:
Kardroid

Kardroid

Stammgast
Hi,

ich verstehe deine Frage nicht ganz genau, aber versuch mal statt:
startActivityForResult(intent, 0);

lieber nur ein
startActivity
 
Jaiel

Jaiel

Dauergast
Ich verstehe vor allem cniht was du mit diesem Code erreichen willst!
Du schaffst es deinen ersten Button zu initialisieren beim Klick darauf startest du eine neue Activity und bevor die onCreate() verlassen wird schaffst du es knapp ncoh deinen 2. Button zu initialisieren.
Diese Button objekte sind dazu noch alle lokal angelegt und sind dann wieder weg wenn es aus der onCreate geht.

Selbst wenn diese buttons nach onCreate weiter bestehen würden müsstest du um alle buttons zu aktivieren immer eine Activity starten dann wird der nöchste button deklariert und beim nächsten zurückkommen erst klickbar und so weiter....Der Sinn ergibt sich mir nciht?!
 
F

Fabs44

Ambitioniertes Mitglied
Hallo Zusammen!

Danke für eure Hilfe!!

Ich habe jetzt alle "Blöcke" einzeln verschlossen mit "{);"
Jetzt klappt alles :)

LG Fabs44 :)