Android 可以为单向 Activity 使用错误的布局文件

标签 android orientation

我偶然发现,如果你有一个设置为一个方向的 Activity,但包含一个不同方向的单独布局文件,当 Activity 第一次启动时,它会被与 设备的物理方向并且不是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 的布局,如果 Activity 以纵向方式加载,则纵向特定布局将被膨胀。

顺便说一句,我们遇到这种情况的原因是我们正在开发的 Activity 有一些特定于肖像的错误,因此我们决定在修复这些错误时禁止用户使用肖像模式——当然这个问题会导致打压有点偏!

请注意,如果设备在启动时方向正确,则不会更改为不正确的布局。

最佳答案

而不是 sensorLandscape,尝试仅横向。我很确定它有效。

关于Android 可以为单向 Activity 使用错误的布局文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8063698/

相关文章:

java - 以编程方式创建 IMAP/POP3 帐户

android - 后端内部错误 : Exception during psi2ir in Jetpack compose

android - 从应用程序平滑更改 SDK 的方向

objective-c - iOS 在旋转时重新组织图形

android - 使用 Volley Android 的图像方向

android - 如何使android TextureView以正确的方向显示视频

android - 在方向更改按钮上,touchlistener 不工作

android - 在测试应用程序时使用释放 key ?

android - 使用 HttpClient 4.x 而不是内置的预测试版

android - 是否可以使用带有@hide 注释的Android SDK 方法?