App Basics - Button

A

anfortas

Neues Mitglied
0
Hallo Android-Hilfe-Community

Im Rahmen einer Arbeit für die Schule habe ich begonnen eine einfache App für Android zu entwickeln. Dazu habe ich (weil dieses Thema, oder besser diese Welt wirklich neu ist für mich) einige Bücher gekauft. Ich verfüge nun schon über Grundkenntnisse in Java und auch Android allgemein.
Jetzt ist aber bereits ein Problem aufgetaucht, das mich leicht überfordert und das im Buch ("Android 2") eigentlich schon vorausgesetzt wird.

Problem ist folgendes:
Von der Startseite meiner Anwendung soll man über verschiedene Buttons auf andere Activities zugreifen können. Dies funktioniert bei mir aber nur bei "imagebuttons". Kann mir jemand kurz erklären, wie der Java Code für das aufrufen einer neuen Activity ist?

Vielen Dank
anfortas
 
anfortas schrieb:
Kann mir jemand kurz erklären, wie der Java Code für das aufrufen einer neuen Activity ist?

Dafür ist Activity.startActivity(Intent) zuständig. Schlag unter Intent nach, da steht dann alles weitere.
 
in deiner Activity wo die Buttons stehen, in die entsprechende XML Datei, beim Button, folgendes Attribut hinzufügen :

android: onClick="onClickmyNExtActitivtyName"

das führt dazu, dass die methode onClickmyNExtActitivtyName() aufgerufen wird beim klicken auf den Button.

und dann in die Activity selber

public void onClickmyNExtActitivtyName(View view)
{
Intent intent = new Intent(this, myNextActivity.class);
startActivity(intent);
}

myNextActivity.class ist halt die Activity die angezeigt werden soll.
 
  • Danke
Reaktionen: anfortas
Vielen Dank für die schnelle Antwort, ich habe das Problem inzwischen anders gelösst: (mit einem OnClickListener)

Code:
Button next = (Button) findViewById(R.id.button01);
		next.setOnClickListener(new View.OnClickListener() {
			public void onClick(View view) {
				Intent myIntent = new Intent(view.getContext(), myActivity.class);
				startActivityForResult(myIntent, 0);
			}

		});

Birgt das irgendwelche Nachteile, soll ich es abändern?
Thx
 
anfortas schrieb:
Vielen Dank für die schnelle Antwort, ich habe das Problem inzwischen anders gelösst: (mit einem OnClickListener)

Code:
Button next = (Button) findViewById(R.id.button01);
        next.setOnClickListener(new View.OnClickListener() {
            public void onClick(View view) {
                Intent myIntent = new Intent(view.getContext(), myActivity.class);
                startActivityForResult(myIntent, 0);
            }

        });
Birgt das irgendwelche Nachteile, soll ich es abändern?
Thx

es kommt aufs selbe hinaus.
weiß nur, dass die methode findViewById() recht rechenintensiv ist.
Aber vermutlich passiert auf meine art im hintergrund auch nix anderes, daher sollte sich beides nichts nehmen.
Eigentlich ist "deine art" auch die üblichere, für außenstehende, auch die besser leserliche.
 
Um findViewById() kommt man aber doch quasi gar nicht herum... und soviele Ids sind nicht in einem Layout, dass sie nicht in eine Map passen. Kann mir irgendwie nicht vorstellen, dass es so rechenintensiv sein soll. Wir benutzen das auch bis zum erbrechen im Code...
Wie registriert man denn sonst Listener an Buttons, Spinnern oder ähnlichem?
 

Ähnliche Themen

A
  • AnimaAngelo85
Antworten
1
Aufrufe
332
swa00
swa00
MES
Antworten
10
Aufrufe
814
MES
MES
Manny87
  • Manny87
Antworten
11
Aufrufe
159
swa00
swa00
Zurück
Oben Unten