Layout wechsel

StefMa

StefMa

Dauergast
450
Hi,

Habe mich mit dem Spinner auseinander gesetzt. Dort kann man verschiedene Sachen auswählen (Montag bis Freitag) und je nach dem was ausgewählt ist, wird ein neues Layout geladen.

Dazu habe ich den itemlistener implementiert und dann "einfach " setContentView(R.layout. Montag) eingesetzt.
Wenn ich das aber mache, verschwindet der Inhalt des Spinners!

Wie kann ich das denn lösen, das ein neues Layout geladen wird, aber der Spinner so bleibt wie er sein soll!?

Gesendet mit der Android-Hilfe.de-App
 
dann wirst wohl in deinem layout mehrere stati haben müssen und dann je nach auswahl wechseln.
 
Was meinst du mit stati? oO
 
war der meinung das ist die mehrzahl von status. aber nach googeln ist es das wohl doch nicht.
naja egal
 
Gibt es in XML eine Art Container?
Dann könnte ich auch alle verschiedene Layouts in eins packen und dann nur sichtbar bzw unsichtbar machen...
Ansonsten würde das auch mit nem linearlayout gegen.. Oder??

Gesendet mit der Android-Hilfe.de-App
 
Ich hab bei mir auch nen Spinner auf einer Activity, mit der man Gruppen filtern kann. Je nach ausgewählter Gruppe werden die nicht dazugehörigen Views unsichtbar gemacht und die anderen eingeblendet. Funktioniert wunderbar und auf dem Handy auch flüssig.
Aber es kommt sicherlich darauf an, wieviele Views insgesamt vorhanden sind.

Aber zu deinem eigentlichen Problem: wieso änderst du die ganze ContentView? Dann brauchst du ja auch in jedem Layout nochmal deinen Spinner mit der Auswahl?
Mach den Spinner doch z.B. nur in die Kopfzeile und dann tauschst du nur das Layout darunter aus und nicht die ganze ContentView.
 
Den zweiten Schritt will ich ja machen.
Aber wie ändere ich denn das Layout ohne ContentView? Und wie meinst du das mit Kopfzeile?

Gesendet mit der Android-Hilfe.de-App
 
Mach doch einfach deine Layouts wie du sie dafür brauchst und setze die visibility entsprechend.

Code:
View view = findViewById(R.id.spinner_auswahl_foo);
view.setVisibility(View.VISIBLE);
Gleiches nur mit INVISIBLE dann für die Sachen, die ausgeblendet werden sollen.
 
Ich habe in dem Spinner verschiedene Tage und dafür immer eine XML Datei. Also Montag.xml, Dienstag.xml. Ect...

Kann ich denn auch das gesamte XML ein-/ausblenden?


Gesendet mit der Android-Hilfe.de-App
 
LayoutGesamt = main -> contentView
Layout1 = id2 -> Spinner (Kopfzeile)
Layout2 = id3 -> Restliche View(s)

dann besorgst du dir das Layout für main. darauf machst z.b. removeView(1) und danach addView(1) mit dem getauschten layout.
 
IceClaw schrieb:
Ich habe in dem Spinner verschiedene Tage und dafür immer eine XML Datei. Also Montag.xml, Dienstag.xml. Ect...

Kann ich denn auch das gesamte XML ein-/ausblenden?


Gesendet mit der Android-Hilfe.de-App

Du kannst auch Layout XML Dateien per import in andere Layout XML Dateien packen... geht alles.
 

Ähnliche Themen

L
Antworten
4
Aufrufe
1.332
lonnie9020
L
A
Antworten
1
Aufrufe
879
koje71
koje71
T
Antworten
4
Aufrufe
1.230
jogimuc
J
Zurück
Oben Unten