Chinaunix首页 | 论坛 | 博客
  • 博客访问: 431665
  • 博文数量: 125
  • 博客积分: 2066
  • 博客等级: 大尉
  • 技术积分: 1032
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-16 14:06
文章分类

全部博文(125)

文章存档

2011年(125)

分类:

2011-06-02 11:44:33

原文地址:Android怎样处理横屏事件 作者:gliethttp

当屏幕变为横屏的时候,系统会重新呼叫当前Activity的OnCreate方法,你可以把以下方法放在你的OnCreate中来检查当前的方向,然后可以让你的SetContentView来载入不同的Layout xml.

if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
     Log.i("info", "landscape");
} else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
     Log.i("info", "portrait");
}

关于屏幕切换
首先需要在androidmanifest.xml中加入配置
android:configChanges="orientation|keyboardHidden|navigation
这样在程序中. Activity就不会重复的调用onCreate()
甚至不会调用onPause.onResume.
只会调用一个onConfigurationChanged(Configuration newConfig)

这是在XML加入配置选项的前提下,如果在不加入选项的情况下。如上所述, Activity会重新激活onCreate方法。
根据你自己的需求来选择配置改变时的处理机制这样比较好一点。

关于屏幕显示方向,在AndroidManifest.xml里面配置一下就可以了。
android:screenOrientation="landscape" 代表横向
android:screenOrientation="portrait" 代表纵向
不加这一行就代表自动

添加的具体位置是在android:screenOrientation="landscape" >

阅读(880) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~