Android禁止横屏竖屏切换的有效方法
在Android中要让一个程序的界面始终保持一个方向,不随手机方向转动而变化的办法: 只要在AndroidManifest.xml里面配置一下就可以了。
在AndroidManifest.xml的activity(需要禁止转向的activity)配置中加入android:screenOrientation=”landscape”属性即可(landscape是横向,portrait是纵向)。例如:
package="com.ray.linkit"
android:versionCode="1"
android:versionName="1.0">
android:label="@string/app_name"
android:screenOrientation="portrait">
android:screenOrientation="portrait">
android:screenOrientation="portrait">
另外,android中每次屏幕方向切换时都会重启Activity,所以应该在Activity销毁前保存当前活动的状态,在Activity再次Create的时候载入配置,那样,进行中的游戏就不会自动重启了!
要避免在转屏时重启activity,可以通过在androidmanifest.xml文件中重新定义方向(给每个activity加上android:configChanges=”keyboardHidden|orientation”属性),并根据Activity的重写onConfigurationChanged(Configuration newConfig)方法来控制,这样在转屏时就不会重启activity了,而是会去调用onConfigurationChanged(Configuration newConfig)这个钩子方法。例如:
if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE){
//横向
setContentView(R.layout.file_list_landscape);
}else{
//竖向
setContentView(R.layout.file_list);
}
在模拟器中,要使程序转屏可以使用快捷键F12或Ctrl+F11来切换。当然在用命令行启动模拟器时可以直接使用参数emulator.exe -skin HVGA-L来启动横屏的程序。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持phpstudy。相关阅读:
Mac OS X Lion 恢复功能禁止方法图文教程
C语言科学计算入门之矩阵乘法的相关计算
Java设计模式之组合模式(Composite模式)介绍
css如何让浮动元素水平居中
HTML5 本地存储 LocalStorage详解
Java设计模式之工厂模式(Factory模式)介绍
苹果MAC有哪些秘密功能?苹果电脑中隐藏的10个秘密功能介绍
探讨Java验证码制作(下篇)
Ajax初试之读取数据篇实现代码
PHP图像裁剪缩略裁切类源码及使用方法
win10拨号连接如何创建?宽带拨号连接设置向导
jquery选择器之层级过滤选择器详解
基于PHP 面向对象之成员方法详解
AngularJS基础知识笔记之表格