Android может использовать неверный файл макета для действий с одной ориентацией - PullRequest
4 голосов
/ 09 ноября 2011

Я случайно обнаружил, что если у вас есть действие, которое настроено на одну ориентацию, но содержит отдельный файл макета для другой ориентации, то при первом запуске действия оно будет накачано файлом макета, который соответствует * 1001. * физическая ориентация устройства и , а не файл макета, который соответствует ориентации Activity . Таким образом, если AndroidManifest.xml указывает

    <activity
        android:name=".activities.LandscapeGardener"
        android:screenOrientation="sensorLandscape">
        <!-- note for new readers: sensorLandscape is like landscape, but also
             works upside-down.
             Other activity stuff would go here. -->
    </activity>

и в папке layout-port есть макет для LandscapeGardener, если действие загружено в портретной ориентации, характерная для портрета компоновка будет раздута.

Между прочим, причина, по которой мы имеем эту ситуацию, заключается в том, что разрабатываемое нами задание имеет некоторые характерные для портрета ошибки, поэтому мы решили отключить портретный режим для пользователей, пока мы их исправляем, но, конечно, эта проблема делает подавление несколько частичное!

Обратите внимание, что если устройство правильно ориентировано при запуске, оно не изменится на неправильную компоновку.

1 Ответ

0 голосов
/ 09 ноября 2011

вместо sensorLandscape, попробуйте просто ландшафт. Я уверен, что это работает.

...