原因:
横竖屏变换
例如:如果你在onCreate方法写了
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)
让activity横屏,会重写调用一次onCreate方法(debug发现)
解决方法:
第一步:
在AndroidManifest.xml中增加下面的设置:
android:configChanges="mcc|mnc|orientation|keyboardHidden"
第二步:
重写下面的方法
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
// 检测屏幕的方向:纵向或横向
if (this.getResources().getConfiguration().orientation
== Configuration.ORIENTATION_LANDSCAPE) {
//当前为横屏, 在此处添加额外的处理代码
}
else if (this.getResources().getConfiguration().orientation
== Configuration.ORIENTATION_PORTRAIT) {
//当前为竖屏, 在此处添加额外的处理代码
}
}