【问题标题】:Android any orientation XML layoutAndroid 任意方向 XML 布局
【发布时间】:2011-12-01 14:52:43
【问题描述】:

您好,我正在尝试使我的布局与所有方向屏幕类型(横向/纵向)兼容。为此,我使用layout-landlayout-port

这适用于只有 2 个方向位置(横向和纵向)的设备,但如果我旋转支持 4 个方向位置(左/右、端口倒置/倒置)的设备,则无法正常工作。仅在默认陆地位置上工作,但如果我在另一个横向位置上旋转设备,android 会选择 layout-port 布局而不是 layout-land

如何在 XML 中解决这个问题?还是唯一的解决方案是自己管理方向变化?

【问题讨论】:

    标签: android xml screen-orientation device-orientation


    【解决方案1】:

    在这里你会注意到我只是为 StageOrientationEvent.ORIENTATION_CHANGE 事件监听舞台。当事件触发时,舞台可以有五种可能的方向:默认、向左旋转、向右旋转、倒置和未知。

    http://www.unitedmindset.com/jonbcampos/2010/09/27/air-for-android-screen-orientation/

    【讨论】:

      【解决方案2】:

      使用 XML 无法做到这一点。你必须做程序化。要检测方向变化,您可以使用 OrientationEventListener

      【讨论】:

        【解决方案3】:

        您的 targetSDK 必须是 2.2(当引入 reverseLandscape 和 reversePortrait 方向时......很确定它是在 2.2 中)并且您的设备必须支持这些方向。例如 Sony Tablet S 不会进入 reverseLandscape 但会做 reversePortrait

        【讨论】:

        • 哦.. 我有 android sdk 2.1 .. 所以这可能是问题所在?
        【解决方案4】:

        似乎布局土地有效..问题是我自己管理方向更改并且只采用了两种类型的方向..

        (我管理方向只是为了降低应用标题并使其在横向全屏..)

        谢谢你的回答

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-12-03
          • 1970-01-01
          • 1970-01-01
          • 2013-02-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多