Zablokuj aplikację telefonu Android w trybie portretowym

101

Czy ktoś może mi powiedzieć, jak zablokować moją aplikację w trybie portretowym? Czy jest to prosta konfiguracja w pliku manifestu?

sexitrainer
źródło

Odpowiedzi:

224

Tak. Dodaj android:screenOrientation="portrait"do manifestu w ramach swojej głównej działalności.

<activity android:name=".yourActivity" android:screenOrientation="portrait"... />
techiServices
źródło
74

Tak! To atrybut tagu aktywności:

<activity android:name=".yourActivity" android:screenOrientation="portrait" ... />
Francesco Laurita
źródło
7
Czy muszę dodać to do wszystkich działań, aby je zablokować?
Harsha MV
@HarshaMV Wygląda na to, że dodanie tego do głównego działania powoduje zastosowanie go do całej aplikacji.
Declan McKenna
12

Może być również konieczne dodanie następujących elementów do elementu działania:

android:configChanges="keyboardHidden"

W ten sposób system operacyjny nie zmieni orientacji, gdy użytkownik otworzy wysuwaną klawiaturę.

Tim Mahoney
źródło
4

Żadna z tych odpowiedzi nie działała w moim systemie, ale stwierdziłem, że poniższe działały idealnie w przypadku prostej aplikacji, którą opracowałem:

W ramach MainActivity.java dodaj:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

to onCreate ()

To jest moje:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

Wiem, że nie jest to (zawsze) najlepsza praktyka blokowania orientacji, ale w szczególnych okolicznościach jest ważna i chcę tego tylko tymczasowo, dopóki będę dalej rozwijać.

Ned
źródło
Witamy w StackOverflow. Dobrze, że udostępniasz rozwiązanie dla swojego konkretnego przypadku, ale możesz edytować swoją odpowiedź, aby poprawnie sformatować opublikowany kod, aby był bardziej czytelny dla człowieka. Aby to zrobić, kod i poprzedni akapit muszą być podzielone co najmniej dwoma podziałami wierszy, a każdy wiersz w bloku kodu musi być wcięty z co najmniej 4 spacjami. Wypróbuj to, edytując swoją odpowiedź, a sam zobaczysz, jak dzięki niej twoja odpowiedź będzie wyglądać znacznie lepiej.
SebasSBM,
W sekcji Jak zamieścić dobrą odpowiedź, znajdziesz kompletne, przydatne wskazówki, jak ogólnie poprawić odpowiedzi ? . Ale w twoim przypadku ta sekcja dotycząca przecen w postach będzie o wiele bardziej interesująca. Każda niewielka poprawa w Twojej odpowiedzi może mieć duże znaczenie.
SebasSBM,
Dzięki za wskazówki, SebasSBM, kiedy go wysłałem, na ekranie wyglądało na czytelne, ale w podróży coś zginęło :)
Ned