Android开发中Activity切换导致的onCreate重复执行的问题
在我们用Android开发过程中,会碰到Activity在切换到后台或布局从横屏LANDSCAPE切换到PORTRAIT,会重新切换Activity会触发一次onCreate方法。
在Android开发中这种情况视可以避免的,我们可以在androidmanifest.xml中的activit元素加入这个属性android:configChanges="orientation|keyboardHidden" 就能有效避免oncreat方法的重复加载,
androidmanifest.xml内容如下:红色字体为添加部分
<?xml version="1.0" encoding="utf-8"?>
android:versionCode="1"
android:versionName="1.0">
android:configChanges="orientation|keyboardHidden"
android:label="@string/app_name">
同时在Activity的Java文件中重载onConfigurationChanged(Configuration newConfig)这个方法,这样就不会在布局切换或窗口切换时重载等方法。代码如下:
@Override
public void onConfigurationChanged(Configuration newConfig)
{
super.onConfigurationChanged(newConfig);
if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE)
{
//land
}
else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT)
{
//port
}
}
更多相关文章
- android拾遗——四大基本组件介绍与生命周期
- cocos2d-x android c++调用java
- [Android]资源存储方法
- 详解Android提交数据到服务器的两种方式四种方法
- Android(安卓)高级编程--Fragment理解与使用
- android 如何中断一个子线程
- Android(安卓)Q WiFi Enable
- Android企业级程序完全退出的解决方案
- Android客户端和服务器端数据交互的第二种方法