禁用整个应用程序的横向模式

时间:2011-08-22 20:15:51

标签: java android screen-orientation

有没有办法将横向模式设置为整个应用程序,而不是将android:screenOrientation="portrait"添加到AndroidManifest中的每个活动中?

3 个答案:

答案 0 :(得分:10)

这是我唯一能想到的。编写一个扩展Activity的类,并将以下内容放在该类中:

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

然后,不要在其他类中扩展Activity,而是扩展新类。

答案 1 :(得分:7)

我能想到的一种编程方式是创建一个扩展活动并从那里扩展所有类的超类。

在受保护的方法中使用super class中的以下设置并调用super.xxx()来启动它:

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

如果你以不同的方式进行特定活动,你可以简单地覆盖它。

[我还没有尝试过这个,但是通过OOP的知识这个工作]

答案 2 :(得分:0)

您可以尝试将该属性放在清单的节点中。我不知道是否支持。如果不是我害怕把它放在你的每一个中将是下一个最简单的方法。

您可以通过使自己成为扩展活动的CustomActivity并在onCreate中将窗口标志设置为Portrait来实现它。然后,通过所有其他活动,您可以扩展CustomActivity而不是普通活动。