【问题标题】:How do I lock the layout of my android program to one orientation [duplicate]如何将我的android程序的布局锁定到一个方向[重复]
【发布时间】:2011-02-25 20:39:29
【问题描述】:

可能重复:
Don’t want activity to be destroyed/created when phone is rotated

我正在尝试编写一个程序,该程序在手机四处旋转时需要平滑的方向传感器样本。每次更改手机的方向时,它都会在布局更改时中断数据并冻结程序。如何将其锁定在一个方向(横向或纵向,没关系)?

我认为它与xml文件中的android:layout有关,但我在网上找不到任何东西。

【问题讨论】:

    标签: java android orientation sensors screen-orientation


    【解决方案1】:

    最简单的方法之一就是使用android:screenOrientation="portrait|landscape"
    <activity> 文件中 <activity> 标记的属性。

    【讨论】:

      【解决方案2】:

      This answer 对我来说很有希望(在 SO 搜索框中使用 [android] [screen-orientation]

      【讨论】:

        【解决方案3】:

        在java代码中它看起来像这样:

        super.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        

        【讨论】:

          【解决方案4】:

          您可以在清单文件中为特定活动使用此语法:

          android:configChanges="keyboardHidden|orientation"
          

          【讨论】:

            【解决方案5】:

            上述方法似乎对我不起作用。

            我总是使用:-

            setRequestedOrientation(0);

            改变最后的值会产生水平/垂直锁定。 不过,如果在纵向模式下,请确保捕捉到正在清单中打开的键盘,因为它可能会产生意想不到的结果。

            【讨论】:

            • 我的 IDE 不允许我使用数字,说它必须是文档中的常量之一。有其他选择吗?
            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-06-08
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多