问题描述
- 关于android 横竖屏的一个问题。求高手赐教。
-
关于android 横竖屏的一个问题。求高手赐教。
activity被我强制设为横屏了,但是在此activity上锁屏后再解锁屏,这时此activity竟是从竖屏切换到横屏了,也就是说锁屏后横屏的activity又变回竖屏了。这是怎么回事?如何让被我强制设为横屏的activity一直保持横屏,即使在锁屏的时候?
解决方案
其实我很奇怪为什么你的屏幕没有转成横屏,因为你已经设置横屏了。 如果一个界面是横屏状态下锁屏,如果锁屏界面是竖屏,那解锁后会先竖屏再转成横屏,貌似和锁屏界面有点关系,不过还是无法回答你的问题,只是一个实例而已。估计还是要看看KeyGuardViewMeditor.java、windowmanagerservice.java和PhoneWindowManager.java这些相关的类才能完全清楚吧。
解决方案二:
看看这篇文章是否有用http://blog.csdn.net/sundesheng125/article/details/8507213
在windowmanagerservice里面下功夫。
解决方案三:
在AndroidManifest.xml里面设置Activity的orientation是landscape就行。
解决方案四:
如果你想以程序的方式改变屏幕方向,在竖向屏幕的 Activity 中调用
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
横向屏幕中
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
或者,如果在 Manifest 添加
<activity
android:name=".activity.MainActivity"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:configChanges="orientation">
想了解更多,请参考:
http://developer.samsung.com/android/technical-docs/Handling-Orientation-in-Android
解决方案五:
在 AndroidMainfest.xml
<activity
android:name=".path.to.Activity"
android:configChanges="orientation"
android:screenOrientation="landscape" >
解决方案六:
很不错,有用,谢谢。
时间: 2024-10-26 05:33:39