【发布时间】:2011-10-04 22:05:25
【问题描述】:
我已经做了很多搜索和试错测试,试图让我的应用程序在纵向模式下得到修复,但是我在这个问题上遇到了困难。
背景:这个应用程序有一个主要的活动,它显示具有各种过渡效果的静态图像。它使用子活动来显示 MediaPlayer,因为 SurfaceView(显示影片剪辑所需的)削弱了静止图像转换的显示性能。
这两个活动都锁定在纵向模式下,这在大多数情况下似乎运行良好。我的问题是,当子活动完成并且我将设备置于横向位置时,它会暂时切换到横向模式,然后再切换回纵向模式。这样做时,我会看到屏幕上的箭头等,我不希望这样。
这是来自 logcat 的转储:
D/光标 (1357): cursor_rotate 0
I/WindowManagerService(1357):将旋转设置为 0,animFlags=1
I/ActivityManager(1357):配置更改:{ scale=1.0 imsi=0/0 loc=en_US touch=3 keys=1/1/2 nav=1/1 orien=2 layout=35 uiMode=17 seq=1726}
D/main_activity(6851): onActivityResult: 0
D/child_activity(6851):surfaceDestroyed 调用
D/光标 (1357): cursor_rotate 3
I/WindowManagerService(1357):将旋转设置为 3,animFlags=1
I/ActivityManager(1357):配置更改:{ scale=1.0 imsi=0/0 loc=en_US touch=3 keys=1/1/2 nav=1/1 orien=1 layout=35 uiMode=17 seq=1727}
D/StatusBarPolicy(1357): ro.wmt.ui.portrait.hide.capbtn = 1
D/StatusBarPolicy(1357): wm.getRotation = 3
D/StatusBarPolicy(1357): ro.wmt.ui.portrait.hide.capbtn = 1
D/StatusBarPolicy(1357): wm.getRotation = 3
我想看到的唯一两行以粗体显示,其他我想消除的行。有时,切换是无缝的,具体取决于时间,所以我猜可能存在某种竞争条件?
【问题讨论】:
标签: android screen-orientation