我有以下活动:
android:screenOrientation="portrait"
和代码:
if(blah blah blah)
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)
在活动中onCreate.
1.在智能手机上进行测试时,“ setRequestedOrientation”会破坏活动,并以所需的屏幕方向再次创建.
2.在平板电脑设备上测试时,此代码仅运行一次活动.在“ setRequestedOrientation”之后,它将继续运行而不会破坏并再次创建活动.当在onCreate中没有调试器或没有断点的启动代码时,就会发生这种情况.如果我停止onCreate函数-我在日志中看到-销毁并再次onCreate.
如何使用平板电脑捕捉特定情况?
更新:
-如果禁用“方向锁定”,则平板电脑会出现问题.如果启用了“方向锁定”,则程序的工作方式与智能手机相同.
UPDATE2:
-是否可以为整个应用程序设置首选的屏幕方向.因此,当活动开始知道所需的方向时.这将导致不必要的调用“ setScreenOrientation”,并避免创建第二个活动.
解决方法:
不可以.您不能为整个应用程序设置首选的屏幕方向…相反,您应该仅在各个活动中调用setScreenOrientation … Refere this link here…