首页 > 解决方案 > Android 中的最佳实践双窗格仅使用 Android 中的 1 个活动和两个片段

问题描述

介绍

在几个教程中讨论了使用两个活动和两个可能的片段设置两个窗格的应用程序,例如参见Lance Gleason 的教程。来自 Android Studio 的存根代码也使用了这种实现。

问题

问题是所有教程都只覆盖了静态实现方法(在XML中使用Fragments)或者使用另外一个activity,主要是在两个pane模式下展示细节。

问题是,Andoroid 表示,从现在开始,单 Activity 应用程序是必经之路:今天我们将引入 Navigation 组件作为构建应用内 UI 的框架,重点是使单 Activity 应用程序成为首选架构.

单一活动解决方案的问题在于,如果您想在配置更改期间保存 Fragment 的状态,事情就会变得困难。

问题

对于 Android 中的双窗格架构,什么是最佳实践解决方案,仅使用 1 个 Activity,两个片段,同时在配置更改期间保持片段的状态?

亲切的问候

延斯·布赛

标签: androidandroid-studioandroid-fragmentsandroid-activitykotlin

解决方案


使用架构组件 (AC) 时,通常使用 ViewModel 类。此类使片段之间的通信成为可能,并在发生配置更改时保持其状态。

查看描述 AC ViewModel 的文档:https ://developer.android.com/topic/libraries/architecture/viewmodel


推荐阅读