当我登录Android应用程序,并且快速旋转屏幕时,app无法处理onSaveInstanceState和onCreate(加载用户并执行登录)。所以我退出了。我能以某种方式处理轮换,并且不允许这么快地调用这些方法吗?
答案 0 :(得分:0)
当您旋转设备时,您的Activity将重新创建,并且所有变量将被重新初始化。因此,在这种情况下,如果您希望某些值在Rotation上保持相同,您也可以使用onSaveInstanceState()存储它们的状态,并且可以通过检查Bundle is not null来再次恢复onCreate()。
if(savedInstanceState != null){
// get the restore value from the Bundle
}
旋转设备时将调用onConfigurationChanged()的位置(请注意,只有选择了要处理的配置时才会调用此设备) 屏幕旋转时调用此方法
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
//Do stuff here
}