在活动旋转时恢复显示的片段



我有一个片段,上面显示了一个主片段。当我旋转屏幕时,活动正在重新创建。存储有关当前显示片段的信息以用于屏幕状态还原的最佳方法是什么?

您可以使用方法 onSaveInstanceState 将值存储在捆绑包中:

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putString(MY_FIRST_KEY,valueToSave);
}

然后,您可以在方法中还原值 恢复实例状态

 @Override
 protected void onRestoreInstanceState(Bundle inState) {
    super.onRestoreInstanceState(inState);
    valueToSave = inState.getString(MY_FIRST_KEY);
 }

您还可以在TextViews和EditText上设置一个名为"freezeText"的xml属性,该属性保存已设置的任何文本。

最新更新