【问题标题】:Android - detect orientation change, but have interface not respondAndroid - 检测方向变化,但界面无响应
【发布时间】:2011-04-13 05:02:14
【问题描述】:

是否可以在 Android 中捕获屏幕旋转事件但实际上不让 Activity 响应旋转事件?

为了让事情变得更加困难,我有一个由 TabActivity 支持的活动,并且我想在其中一个选项卡中旋转屏幕上的一些内容区域 - 但让选项卡保持纵向模式。

我尝试在清单中将活动方向设置为纵向,但随后我不再获得 onConfigurationChanged(..) 事件。但是,如果我删除这条线,整个选项卡也会旋转。

任何帮助表示赞赏!

【问题讨论】:

    标签: android interface rotation onconfigurationchanged


    【解决方案1】:

    您可能希望在 AndroidManifest 中向活动的 configChanges 属性添加“方向”。

    android:configChanges="orientation"
    

    http://androidappdocs.appspot.com/guide/topics/manifest/activity-element.html#config

    【讨论】:

      【解决方案2】:

      像您一样在清单中将方向设置为纵向模式,但直接监听加速计传感器(Android 从中获取设备方向的传感器)更新并自行解析它们以了解方向何时发生变化。

      这实际上很容易做到。示例见此处:http://www.anddev.org/accessing_the_accelerometer-t499.html

      【讨论】:

      • 我基本上按照您的建议做了一个变体 - 只是听了事件并在方向改变时触发我自己的本地事件。感谢您的帮助。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多