Android 使用setRetainInstance更改屏幕方向(真)

Android 使用setRetainInstance更改屏幕方向(真),android,screen-orientation,Android,Screen Orientation,嘿,我想问一下如何使用新方法setRetainInstance(true)处理android中的屏幕方向变化,因为它只适用于未添加到backbackback的片段。我目前拥有的是一个不使用片段的应用程序,它只使用活动和异步任务,那么我该如何在我的应用程序中实现android的这一新变化呢 此解决方案不可行,因为我需要将布局从横向更改为纵向android:configChanges=“orientation”您应该查看有关活动和片段的指南和文档 您已经重写了两个方法1)onSaveInstance

嘿,我想问一下如何使用新方法setRetainInstance(true)处理android中的屏幕方向变化,因为它只适用于未添加到backbackback的片段。我目前拥有的是一个不使用片段的应用程序,它只使用活动和异步任务,那么我该如何在我的应用程序中实现android的这一新变化呢
此解决方案不可行,因为我需要将布局从横向更改为纵向android:configChanges=“orientation”

您应该查看有关活动和片段的指南和文档

您已经重写了两个方法1)onSaveInstanceState()和2)onRestoreInstanceState()

将所有动态数据和对象保存到捆绑包中,并在RestoreInstanceState()上检索它

比如说,

  @Override
    public void onSaveInstanceState(Bundle savedInstanceState){
        super.onSaveInstanceState(savedInstanceState);
        savedInstanceState.putString("message", text.getText().toString());
    }

    @Override
    public void onRestoreInstanceState(Bundle savedInstanceState){
        super.onRestoreInstanceState(savedInstanceState);
        message = savedInstanceState.getString("message");
    }
“此解决方案不可行,因为我需要将布局从横向更改为纵向”

保留片段的要点是,即使底层活动可能在配置更改时被破坏,您的片段也不会被破坏;因此,您可以通过更改使其保持状态

这些链接将帮助您:


我们如何在后堆栈中维护的片段中保留配置更改。因为我们不能使用
setRetainInstance(true)