Activity横竖屏切换的问题

Activity在横竖屏切换的时候会重新走生命周期的方法,这样做的话会导致一些问题 比如我们在界面上录入的一些数据,,但因为重新走了生命周期的方法onCreate()方法,这样就会导致前功尽弃,所以就想办法,在横竖屏切换的时候不能让其重新OnCreate(),Android中我们可以在清单文件中对应的Activity使用如下的属性android:configChanges=”keyboardHidden|orientation|screenSize” 这样就可以避免此类事情的发生。下面是示例代码:

packagecom.minimax.demo;importandroid.os.Bundle;importandroid.app.Activity;importandroid.view.Menu;///Activity横竖屏切换/src/com/minimax/demo/MainActivity.javapublicclassMainActivityextendsActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);System.out.println(“onCreate()…..”);}@OverrideprotectedvoidonStart(){//TODOAuto-generatedmethodstubsuper.onStart();System.out.println(“onStart()…..”);}@OverrideprotectedvoidonResume(){//TODOAuto-generatedmethodstubsuper.onResume();System.out.println(“onResume()…..”);}@OverrideprotectedvoidonPause(){//TODOAuto-generatedmethodstubsuper.onPause();System.out.println(“onPause()…..”);}@OverrideprotectedvoidonStop(){//TODOAuto-generatedmethodstubsuper.onStop();System.out.println(“onStop()…..”);}@OverrideprotectedvoidonDestroy(){//TODOAuto-generatedmethodstubsuper.onDestroy();System.out.println(“onDestroy()…..”);}@OverrideprotectedvoidonRestart(){//TODOAuto-generatedmethodstubsuper.onRestart();System.out.println(“onRestart()…..”);}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.getMenuInflater().inflate(R.menu.main,menu);returntrue;}}在没有添加对应的属性之前,我们切换横竖屏之后打印的Log日志如下:04-2221:50:51.954:I/System.out(24476):onCreate()…..04-2221:50:51.964:I/System.out(24476):onStart()…..04-2221:50:51.964:I/System.out(24476):onResume()…..04-2221:50:56.524:I/System.out(24476):onPause()…..04-2221:50:56.524:I/System.out(24476):onStop()…..04-2221:50:56.524:I/System.out(24476):onDestroy()…..04-2221:50:56.614:I/System.out(24476):onCreate()…..04-2221:50:56.614:I/System.out(24476):onStart()…..04-2221:50:56.614:I/System.out(24476):onResume()…..添加如下属性:<activityandroid:name=”com.minimax.demo.MainActivity”android:label=”@string/app_name”android:configChanges=”keyboardHidden|orientation|screenSize”><intent-filter><actionandroid:name=”android.intent.action.MAIN”/><categoryandroid:name=”android.intent.category.LAUNCHER”/></intent-filter></activity>在添加属性之后之后,打印的Log日志如下:04-2221:52:25.984:I/System.out(30283):onCreate()…..04-2221:52:25.984:I/System.out(30283):onStart()…..04-2221:52:25.994:I/System.out(30283):onResume()…..无论如何我们切换横竖屏,都不会重新走onCreate()方法

本文出自 “祝你幸福” 博客,请务必保留此出处

只有一条路不能选择——那就是放弃的路;

Activity横竖屏切换的问题

相关文章:

你感兴趣的文章:

标签云: