【问题标题】:Screen orientation landscape back to portrait not working屏幕方向横向回到纵向不起作用
【发布时间】:2010-03-20 03:30:17
【问题描述】:

我已经为这个问题绞尽脑汁了好几个小时。我创建了一个 main.xml 并设计了一个用于 res/layout-land(横向)格式,另一个用于 res/layout 中的纵向。

当我旋转模拟器 (ctrl-F11) 时,我的应用会使用正确的 main.xml 正确旋转到横向,但随后旋转回纵向只会保留横向 mail.xml。

这是在 2.0 AVD 中完成的。

出于绝望,我下载了新的多分辨率示例代码,并不得不创建一个新的 2.1 AVD,令我惊讶的是,这个应用程序的轮换按预期正常工作。所以我决定在 2.1 AVD 上试用我的应用程序,它运行良好。

那么,这是 2.0 AVD 中的错误,还是我需要为

这让我发疯了,因为没有人在哪里提到这个问题。

提前致谢

【问题讨论】:

  • 我现在在 2.3.3 模拟器中看到了同样的情况......虽然 1.6 和 2.1 工作正常......但是让测试变得困难 :)

标签: android android-emulator


【解决方案1】:

FWIW,官方报告为 bug here

【讨论】:

  • 解决方法是在纵向模式下点击主页按钮,这将重置重力传感器
【解决方案2】:

安装了一个全新的 Android 开发环境,并创建了一个新的 2.3.3 AVD。 (手臂和x86)。两者都有相同的问题,即使是系统应用程序也是如此。所以这不是你代码中的错误,因为系统应用程序也有同样的问题。

按“主页”并重新启动您的应用可以使其恢复纵向。

【讨论】:

    【解决方案3】:

    除非你指定

    <activity android:name="MainActivity" android:configChanges="orientation">
    

    在您的清单中,我认为您的应用应该自动选择正确的 layout.xml。所以,对我来说,这似乎是模拟器中的一个错误。无论如何,我发现模拟器在其他方面存在问题。前任。当你改变方向时,它会运行两次代码。

    【讨论】:

    • 当你改变方向时,Activity 被重新创建,它的 onCreate() 方法被再次调用,重新创建了整个 Activity。所以它不是一个错误..
    【解决方案4】:

    我正在为 Java Helios 和 Android 2.2 使用 Eclipse,我在笔记本电脑上遇到了同样的问题。我发现至少对我来说是什么问题。有时我在没有无线网络的区域使用笔记本电脑工作,所以我没有连接到互联网,这似乎导致了这个问题。我已经通过去一个 wifi 热点对其进行了测试,果然,纵向和横向之间的切换并再次返回工作正常。也许模拟器只需要有一个连接就可以做到这一点,或者它是模拟器中的一个错误。

    【讨论】:

      【解决方案5】:

      是的,当涉及到方向更改时,模拟器有点错误。我没有遇到过这个特定的问题,但它有时会做一些奇怪的事情。然而,这绝对不是

      【讨论】:

        【解决方案6】:

        我也面临同样的问题。我解决了。我不认为这是一个模拟器错误。我认为在一些真正的手机中它也会表现得像这样。主要原因是活动不清爽。你可以做一件事——覆盖

        public void onConfigurationChanged(Configuration newConfig) {
            // TODO Auto-generated method stub
            super.onConfigurationChanged(newConfig);
            startActivity(getIntent());
            finish();
        
        }
        

        并重新加载当前活动。它会帮助你。

        【讨论】:

          【解决方案7】:

          我只进行了 2.1 开发,但我刚刚想到的另一个想法是尝试 CTRL-F12(切换到 NEXT 布局方向)而不是 CTRL-F11(切换到 PREVIOUS 布局方向(),看看是否有任何变化。这是来自Controlling the Emulator

          此外,您可以覆盖许多生命周期方法来监控幕后发生的事情。这可能会让您知道模拟器中是否存在错误。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2015-12-30
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多