2017-05-15 3 views
0

Ich möchte zwei verschiedene Layouts (eins für Hochformat und eins für Querformat), aber wenn ich die Ausrichtung ändern, möchte ich nicht onCreate wiederholen.Unterschiedliche Layout auf andere Bildschirmausrichtung ohne onCreate

Ist es möglich, dies zu tun?

+0

Es geht nicht um Ihre Layouts, die Aktivität wird neu gestartet, wenn die Ausrichtung geändert wird. Sie können also Änderungen vornehmen oder die Aktivität bei einer einzelnen Ausrichtung belassen –

+0

Zusätzlich zu Renes Vorschlägen können Sie auch ein Fragment-Modell verwenden. –

Antwort

0

Normalerweise wird beim Ändern der Ausrichtung onDestroy() und direkt danach onCreate() der Activity aufgerufen.

Allerdings können Sie dies vermeiden: Handling Configuration Changes Yourself

EDIT: Für ein anderes Layout für Hoch- oder Querformat Sie zwei Layouts in onCreate() verwenden können und eine auswählen, basierend auf der Ausrichtung (Ich weiß, Sie wollten das vermeiden, onCreate Methode, aber ich glaube nicht, dass es möglich ist). Überprüfen Sie einfach die aktuelle Ausrichtung und mit this.getResources().getConfiguration().orientation entsprechend handeln.

Vielleicht können Sie vermeiden, onCreate() verwenden und das gleiche tun in onConfig, aber ich bin mir nicht sicher.

+0

Aber ich möchte ein anderes Layout für die Landschaft – Jkrr

+0

Just edited meine Antwort. Ich hoffe es hilft! –

Verwandte Themen