当我登录 android 应用程序和快速旋转屏幕时,应用程序无法处理 onSaveInstanceState 和 onCreate(加载用户并执行登录)。所以我退出了。我可以以某种方式处理旋转,并且不允许这么快调用这些方法吗?
问问题
188 次
1 回答
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
}
于 2013-03-08T07:26:14.527 回答