Einzelne Activitys drehen

  • 8 Antworten
  • Neuester Beitrag
Diskutiere Einzelne Activitys drehen im Android App Entwicklung im Bereich Betriebssysteme & Apps.
R

Russel

Neues Mitglied
Hallo!

Kann man einzelne Activitys drehen? So das eine TabActivity im Portrait Modus bleibt und die einzelnen Activitys die damit aufgerufen werden im Landscape Modus gehen? Wenn man die orientation der einzelnen Activitys auf Landscape setzt funktioniert es nicht. Sie bleiben im portrait Modus.
 
S

swordi

Lexikon
android manifest ist dein freund
 
F

funcoder

Fortgeschrittenes Mitglied
Wie swordi schon sagt, in der Manifest bei deiner Activity einfach folgendes reinkopieren:

Code:
android:screenOrientation="landscape"
Alternativ gibt es noch den Wert "portrait", je nachdem wird das Layout entsprechend "erzwungen".
 
S

swordi

Lexikon
ich lass die genauen lösungen immer absichtlich weg, weil sich der fragestellende auch ein klein wenig mühe machen sollte, die lösung zu finden.


aber meistens kommt jemand 2 min später und postet die exakte lösung ;)
 
R

Russel

Neues Mitglied
Das mit android:screenOrientation: hab ich schon versucht, aber das funktioniert leider nicht :-(....

ich erklär euch das nochmal genauer was ich möchte. Nehmen wir mal an die TabActivity soll nur im Portrait Modus bleiben, egal wie ich mein smartphone drehe. Das Tablayout bleibt dann auch im portraitmodus wenn ich das mit android:screenOrientation: "portrait" einstell. Jetzt möcht ich aber die Activitys die duch die Tabs aufgerufen werden immer im Landscape Modus haben. also vertikal ausgerichtet. Die bleiben aber wenn ich android:screenOrientation: "landscape" einsetzte, erstmal in der Orientation wie das Tablayout ist. Ich will aber unterschiedliche Orientations haben....

Nach diesem Bild sollte dann die Uhrzeit nicht wie jetzt horiziontal sondern vertikal darstehen.
http://www.bogotobogo.com/images/Android/Android9/DigitalTab.png

Klingt alles bisschen unlogisch, aber ist sowas möglich?
 
S

swordi

Lexikon
achsooo :)

denke das geht nicht

edit: bzw nicht so einfach :)
 
P

paulinchen

Gast
ich habe gerade so ein ähnliches Problem, vielleicht kommen wir ja zusammen drauf, wie man das lösen kann.

Ich habe ein ein innerhalb einer Activity einen SlidingDrawer, welchen ich je nach Orientierung unten oder rechts haben möchte. Mit zwei Layouts ist das auch kein Problem, allerdings muss ich aber mittels

Code:
 android:configChanges="keyboardHidden|orientation"
das destroyen und createn meiner Activity verhindern, da darauf ein Timer läuft und sich der sonst bei jeder Telefondrehung resetet.
Daher funktioniert die zwei Layout Methode nicht wirklich.

Mein Lösungsansatz ist jetzt folgender:

Ich habe beide SlidingDrawer in meiner Activity und stelle je nach Drehung den einen oder der anderen auf sichtbar.
Problem hierbei ist, dass ich nicht genau weiß, wie ich die onOrientationChanged Methode in meine Klasse einbauen soll, damit das funktioniert.


So, lange Rede kurzer Sinn, ich denke du kannst das ähnlich machen, indem du dir dein TabWidget zweimal baust, einmal horizontal, einmal vertikal und dann switcht.
Vielleicht hast du oder jemand anderes eine Idee, wie oder ob das praktisch umsetzbar ist.
 
T

TangaPanda

Neues Mitglied
Hi,

das festlegen vom Modus kann man wie gesagt im Manifest tun.

Code:
        <activity android:name=".MyActivity"
            android:screenOrientation="landscape" />
oder (wies bei mir funktioniert hat) in der onCreate der Activity:

Code:
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
Grüße!
 
R

Russel

Neues Mitglied
@Paulinchen

ich hab das mit dem TabWidget jetzt anders gelöst, ich hab die normale TabBar in eine vertikale TabBar umgebaut. Dies hilft dir aber nicht weiter. Wenn mir was zu deiner Sache einfällt, melde ich mich aber...