防止方向改变

时间:2012-08-14 23:18:40

标签: android orientation landscape sensor portrait

我按下按钮后开始执行某些任务的程序,并且在此任务运行时不允许更改其方向。我弄清楚如何做到这一点,但我的问题是我的代码只能以一种方式工作。它在任务运行时保持纵向的纵向方向,并且仅在任务完成后(如果用户在任务期间旋转设备)将方向更改为横向。但横向模式中的同样事情也失败了。即使任务正在运行,它也会旋转为纵向。

这是我用来保持方向的代码。此代码位于按钮onClick方法:

final int ori = getResources().getConfiguration().orientation;
        setRequestedOrientation(ori);

然后我有我的处理程序类,如果任务已经完成则检查每一秒,如果它们是,它会让我的设备预先更改方向。为此,我使用以下代码:

setRequestedOrientation(-1); // as far as I know -1 in this case means unspecified

我也尝试了setRequestedOrientation(4);setRequestedOrientation(10);

1 个答案:

答案 0 :(得分:0)

这个答案有很多赞成:

Background task, progress dialog, orientation change - is there any 100% working solution?

我认为这就是你要找的东西。有点复杂。