防止事件导致的oncreate的多次调用 (转)

Xml代码 复制代码 收藏代码
  1. <activity android:name=".Main"  
  2.                  android:label="@string/app_name" android:configChanges="orientation|keyboardHidden">  
 <activity android:name=".Main"
                  android:label="@string/app_name" android:configChanges="orientation|keyboardHidden">
Java代码 复制代码 收藏代码
  1. public void onConfigurationChanged(Configuration newConfig) {   
  2.   
  3.         super.onConfigurationChanged(newConfig);   
  4. }  
public void onConfigurationChanged(Configuration newConfig) {

		super.onConfigurationChanged(newConfig);
}

 现在笔者正在moto702上测试游戏demo,突然发现滑盖会导致当前Activity多次调用oncreate事件。由于游戏的surfaceview是这里初始化的,所以多次的调用一定会给游戏本身带来多次的初始化。怎么解决呢 在AndroidManifest.xml中修改如上xml的内容android:configChanges="orientation|keyboardHidden"并且在当前Activity中重载方法onConfigurationChanged,有需要的可以在方法中实现自己的功能。如:

Java代码 复制代码 收藏代码
  1. /*  
  2.          *   
  3.          * if (this.getResources().getConfiguration().orientation ==  
  4.          * Configuration.ORIENTATION_LANDSCAPE) {  
  5.          *   
  6.          * }  
  7.          *   
  8.          * else if (this.getResources().getConfiguration().orientation ==  
  9.          * Configuration.ORIENTATION_PORTRAIT) {  
  10.          *   
  11.          * }  
  12.          */  
/*
		 * 
		 * if (this.getResources().getConfiguration().orientation ==
		 * Configuration.ORIENTATION_LANDSCAPE) {
		 * 
		 * }
		 * 
		 * else if (this.getResources().getConfiguration().orientation ==
		 * Configuration.ORIENTATION_PORTRAIT) {
		 * 
		 * }
		 */

  好了 多次调用的问题就这样迎刃而解了~

posted on 2012-12-30 23:22  Fish753  阅读(215)  评论(0)    收藏  举报