Erzwingen Sie, dass eine Android-Aktivität immer den Querformatmodus verwendet
Ich bin mit dem Android VNC - viewer auf meinem HTC G1. Aber für einige Grund, die Anwendung ist immer im Querformat trotz meiner G1 ist im portrait-Modus. Da das Android-VNC-viewer ist open source, ich würde gerne wissen, wie ist es möglich, hart-code eine Tätigkeit, 'Landschaft'. Ich möchte es ändern, um die Achtung der Telefon-Orientierung.
InformationsquelleAutor der Frage hap497 | 2010-01-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Blick auf die AndroidManifest.xml (link), in Zeile 9:
Diese Zeile gibt die
screenOrientation
als Landschaft, aber der Autor geht weiter in überschreiben alle änderungen der Bildschirmausrichtung mitconfigChanges="orientation|keyboardHidden"
. Dies deutet auf eine überschriebene Funktion in VncCanvasActivity.java.Wenn man sich VncCanvasActivity, auf der Linie 109 ist die overrided Funktion:
Den Autor speziell das hinzufügen eines Kommentars zu ignorieren, die Tastatur oder die Ausrichtung ändert.
Wenn Sie dies ändern möchten, gehen Sie zurück zu der AndroidManifest.xml Datei oben gezeigt, und ändern Sie die Zeile auf:
Dies sollte sich ändern, das Programm wechseln vom hoch-ins Querformat, wenn der Nutzer das Gerät dreht.
Dies kann funktionieren, aber vielleicht mess up, wie die GUI aussieht, je nachdem, wie das layout erstellt wurden. Sie haben zu berücksichtigen. Auch, je nachdem, wie sich die Aktivitäten codiert sind, können Sie feststellen, dass, wenn die Bildschirm-Orientierung geändert wird, werden die Werte waren voll in alle input-Felder verschwinden. Dies kann auch behandelt werden.
InformationsquelleAutor der Antwort Pulkit Sethi
Können Sie die gleichen Daten in Ihrem java-code als auch.
Andere Werte auf ActivityInfo können Sie es zurück zu sensor-driven oder gesperrt portrait. Persönlich, ich mag, um es zu etwas in der Manifest-wie vorgeschlagen in einer anderen Antwort auf diese Frage, und dann ändern Sie es später mit dem oben genannten Aufruf in der Android SDK, wenn es einen Bedarf.
InformationsquelleAutor der Antwort haseman
In meinem
OnCreate(Bundle)
ich allgemein Folgendes tun:InformationsquelleAutor der Antwort anwarma
Können Sie die Ausrichtung einer Tätigkeit in dem manifest. Sehen hier.
InformationsquelleAutor der Antwort Michael Krauklis
Der folgende code ist der code, die ich verwendet, um alle Aktivitäten im landscape-Modus:
InformationsquelleAutor der Antwort Megha
Eine schnelle und einfache Lösung für den AndroidManifest.xml Datei, fügen Sie die folgende Informationen zu jeder Aktivität, die Sie wollen, zu zwingen, den Landschaft-Modus:
InformationsquelleAutor der Antwort joshgoldeneagle
Das ist es!! Lange warten auf dieses Update.
Habe ich eine alte Android-Problem, über Doppel-starten Sie eine Aktivität, die erforderlich (programmgesteuert) Querformat:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)
Nun Android machen Querformat-Modus starten.
InformationsquelleAutor der Antwort AndrewDC
Arslan,
warum wollen Sie zu zwingen, Orientierung, pro-grammatisch, obwohl es bereits eine Art manifest
<activity android:name=".youractivityName" android:screenOrientation="portrait" />
InformationsquelleAutor der Antwort Blue Moon
Tut es im code ist, ist IMO falsch und sogar mehr wenn man es also in der onCreate. Tun Sie es in das manifest und das "system" weiß, dass die Ausrichtung der Start der app. Und diese Art von "meta" oder " top-level "Führung" SOLLTE in dem manifest. Wenn Sie möchten, um es zu beweisen, um sich selbst legen Sie eine Pause in der Aktivität onCreate. Wenn du es im code wird es zweimal aufgerufen werden : es beginnt im Portrait-Modus wird dann eingeschaltet, um die Landschaft. Dies geschieht nicht, wenn Sie es in dem manifest.
InformationsquelleAutor der Antwort RichieHH
Dies funktioniert für Xamarin.Android. In OnCreate()
InformationsquelleAutor der Antwort ComeIn
Für Android 4.0 (Ice Cream Sandwich) und höher, die ich brauchte, um diese, neben der
landscape
Wert.Mit nur
keyboardHidden|orientation
wäre noch zu Speicherverlusten und Erholung von meiner Tätigkeit beim drücken der power-Taste.InformationsquelleAutor der Antwort Peterdk
Verwenden Sie die ActivityInfo (android.Inhalt.pm.ActivityInfo) in Ihrer onCreate-Methode vor dem Aufruf von setLayout Methode wie diese
diese.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
InformationsquelleAutor der Antwort Yamikani Sita
Drücken
CTRL+F11
zum drehen des Bildschirms.InformationsquelleAutor der Antwort Yann Pascal DEUNGOUE DJOMENI