Anfängerfrage - mehrere extends

  • 11 Antworten
  • Letztes Antwortdatum
S

stefanb22

Neues Mitglied
0
Hallo,

ich habe eine MainActivity, die durch den eintrag bei der Manifest-Datei als erstes gestartet wird.
extends Activity
public class MainActivity extends Activity implements OnClickListener
{
...
}
Jetzt möchte ich eine Navigation/Actionbar miteinbringen und habe dafür schon eine Klasse IN EINER ANDERER .java Datei!
Dieser Datei ist aber ein TabActivity als extend beigefügt.
extends TabActivity
public class Navigation extends TabActivity
{
intent tab1
intent tab2
usw...
}


Wie kann ich hier nun die Navigation Activity in die MainActivity implementieren?
Die Navigation Activity allein funktioniert soweit, wenn ich diese direkt durch den Eintrag in der Manifest Datei aufrufe.
 
Du möchtest das Deine MainActivity eine TabActivity ist, richtig?
Dann lasse Deine MainActivity einfach von TabActivity erben (diese erbt ja selbst von Activity) und mache alle Anpassungen für Deine Tabs, die Du zuvor in Deiner Klasse Navigation hattest, in der MainActivity.

MfG ;)
Alex
 
  • Danke
Reaktionen: ui_3k1
"mehrere extends" geht nicht in Java (Stichwort Mehrfachvererbung)
 
alex189 schrieb:
Du möchtest das Deine MainActivity eine TabActivity ist, richtig?
Dann lasse Deine MainActivity einfach von TabActivity erben (diese erbt ja selbst von Activity) und mache alle Anpassungen für Deine Tabs, die Du zuvor in Deiner Klasse Navigation hattest, in der MainActivity.

MfG ;)
Alex

So einfach lässt sich das Problem umgehen?^^

Man hat eine Klasse Boot und eine Auto...
Wenn jetzt Boot von Activity erbt und ich bei Auto eine Variable aus Boot brauche kann ich einfach Auto von Boot erben lassen und habe dann die Activity auch gleich "mitreingeerbt"? :razz:
 
Am besten liest du dir erstmal die Java Grundlagen durch. Weil: ich brauche eine Variable aus Klasse x in Klasse y lässt sich eleganter lösen als extra dafür Vererbung zu nutzen. (Auf das Auto/Boot Beispiel bezogen).
 
Ja, sollte ich. Bei C++ habe ich das Problem nicht.. :-/ Bzw komme ich selbst darauf, wenn eine Klasse eine Variable nicht erkennt...
 
Habe mich in die Materie eingelesen, aber wirklich weiter bin ich jetzt nicht.
Bei mir funktioniert das mit den Intents nicht. :(

Mir geht es gerade um folgendes:
Ich habe eine Activity in der man im Edit-Text eine Zahl (int) eingibt.
Diese Zahl soll in einer zweiten Activity als Timer benutzt werden. Man stellt sozusagen einen Zeitzünder ein.^^

Hat jemand eine Idee wie man das löst?
Danke im Voraus
 
Code:
Intent intent = new Intent(A.this, B.class); intent .putExtra("intVariableName", intValue); startActivity(intent );

So sollte es funktionieren.

Über ".putExtra()" kannst Du Daten mitgeben (String, Int, Bitmap etc.)
Code:
Intent mIntent = getIntent(); int intValue = mIntent.getIntExtra("intVariableName", 0);

So holst Du dir den Wert.
 
  • Danke
Reaktionen: ui_3k1
Erst mal vielen Dank für deine schnelle Hilfe.
Leider komme ich damit aber nicht weiter. Sobald ich die Activity öffne schließt sich die Anwendung.

Sobald ich diese Zeilen:
Code:
Intent mIntent = getIntent();
int intValue = mIntent.getIntExtra("intVariableName", 0);
auslasse, geht die Anwendung wieder, aber den Wert hinter meiner Variable bekomme ich ja logischerweise nicht übertragen, wenn ich die Zeilen weglasse.
Puhh.. diese Extras bei Intents rauben mir noch den letzten Nerv.

Arrggggg, ich bin doch so ein Idiot!!
Wenn man die Daten natürlich auch außerhalb der onCreate empfängt wirds schwierig. Ei, ei, ei^^
1000 Dank an dich!
 
Zuletzt bearbeitet:
ui_3k1 schrieb:
Erst mal vielen Dank für deine schnelle Hilfe.
Leider komme ich damit aber nicht weiter. Sobald ich die Activity öffne schließt sich die Anwendung.

Sobald ich diese Zeilen:
Code:
Intent mIntent = getIntent();
int intValue = mIntent.getIntExtra("intVariableName", 0);
auslasse, geht die Anwendung wieder, aber den Wert hinter meiner Variable bekomme ich ja logischerweise nicht übertragen, wenn ich die Zeilen weglasse.
Puhh.. diese Extras bei Intents rauben mir noch den letzten Nerv.

Arrggggg, ich bin doch so ein Idiot!!
Wenn man die Daten natürlich auch außerhalb der onCreate empfängt wirds schwierig. Ei, ei, ei^^
1000 Dank an dich!

Gerne. :smile:
 
  • Danke
Reaktionen: ui_3k1
Wobei ich doch noch eine Frage habe.

Wenn man eine Activity mit Optionseinstellungen hat und die dort hinterlegten Werte in andere Activities laden möchte. Wie geht man da vor? Lädt man die Werte dann ebenfalls über Intents ein?
 
Zurück
Oben Unten