要让程序界面保持一个方向,不随手机方向转动而变化的处理办法:
在AndroidManifest.xml里面配置一下就可以了。加入这一行android:screenOrientation="landscape"。
例如(landscape是横向,portrait是纵向):

view plain copy to clipboard print ?
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <manifestxmlns:android="http://schemas.android.com/apk/res/android"
  3. package="com.ray.linkit"
  4. android:versionCode="1"
  5. android:versionName="1.0">
  6. <applicationandroid:icon="@drawable/icon"android:label="@string/app_name">
  7. <activityandroid:name=".Main"
  8. android:label="@string/app_name"
  9. android:screenOrientation="portrait">
  10. <intent-filter>
  11. <actionandroid:name="android.intent.action.MAIN"/>
  12. <categoryandroid:name="android.intent.category.LAUNCHER"/>
  13. </intent-filter>
  14. </activity>
  15. <activityandroid:name=".GamePlay"
  16. android:screenOrientation="portrait"></activity>
  17. <activityandroid:name=".OptionView"
  18. android:screenOrientation="portrait"></activity>
  19. </application>
  20. <uses-sdkandroid:minSdkVersion="3"/>
  21. </manifest>
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ray.linkit" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".Main" android:label="@string/app_name" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".GamePlay" android:screenOrientation="portrait"></activity> <activity android:name=".OptionView" android:screenOrientation="portrait"></activity> </application> <uses-sdk android:minSdkVersion="3" /> </manifest>


另外,android中每次屏幕的切换动会重启Activity,所以应该在Activity销毁前保存当前活动的状态,在Activity再次Create的时候载入配置,那样,进行中的游戏就不会自动重启了!也可以给每个activity加上android:configChanges="keyboardHidden|orientation"属性,就不会重启activity,而是去调用onConfigurationChanged(Configuration newConfig)。这样就可以在这个方法里调整显示方式:

view plain copy to clipboard print ?
  1. if(newConfig.orientation==Configuration.

http://blog.csdn.net/jump_1990/article/details/4766853

怎么样处理横屏事件

当屏幕变为横屏的时候,系统会重新呼叫当前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方法

根据你自己的需求来选择配置改变时的处理机制这样比较好一点。

更多相关文章

  1. Android(安卓)Preference置灰显示
  2. Android(安卓)利用发送Intent播放本地视频和网络视频
  3. 我的android 第15天 -使用SQLiteOpenHelper获取用于操作数据库的
  4. Android(安卓)Widget 小工具(两) 使用configure
  5. 使用Javaweb开发的WebService部署到Tomcat,使用Android调用的遇到
  6. JNI基础实验一:调用.so文件--友善之臂Tiny210 android 串口/pwm/A
  7. Android下打印调用栈
  8. Android热插拔事件处理流程
  9. [置顶] Android下实现自动关机的方法总结

随机推荐

  1. Android基本控件TextView
  2. Android(安卓)Activity 的四种启动模式 l
  3. Android(安卓)ListView 设置
  4. Android(安卓)imageView图片按比例缩放
  5. android 布局学习
  6. Android界面——LinearLayout和RelativeL
  7. android 几个常用命令
  8. 通过xml加载菜单Menus
  9. Android(安卓)源代码结构
  10. Android(安卓)imageView图片按比例缩放