【发布时间】:2013-12-11 23:53:23
【问题描述】:
编辑:我把这个编辑放在上面是因为我认为我的问题需要重新表述。
我的 mainfest 中有一条关于以下某个场景的台词:
android:screenOrientation="portrait"
android:configChanges="keyboardHidden|orientation|screenSize"
这会将场景锁定为纵向。我需要的是一种在java中以编程方式解锁它的方法,而通常的方法似乎不起作用。我下面的代码块实际上是正确的,我只是在其他地方有错误的代码阻止它工作。
我想知道是否有一种方法可以在手机上强制特定活动为纵向,同时在平板电脑或任何其他更大的设备上仍允许它是纵向或横向?
但是,我的情况比大多数类似情况要复杂一些,因为我正在使用的活动继承自另一个我无法更改的活动类。出于某种原因,如果从电话调用 onCreate(),其他活动将崩溃,所以我不能只使用“setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);”在 onCreate() 中,因为调用 super.onCreate() 时应用程序仍然崩溃。
我尝试在清单中将活动锁定为纵向,然后将其添加到 onCreate:
if(!mIsPhone)
{
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
}
然而,这并没有做任何事情。场景在平板电脑上仍然锁定为纵向。
【问题讨论】:
-
你能发布完整的 onCreate() 代码吗?
标签: android android-orientation