【问题标题】:Correct Back Fragment from Activity纠正活动中的背部片段
【发布时间】:2016-03-28 15:38:59
【问题描述】:

我有 3 个片段: 活动基础 -> 片段 A -> 片段 B -> 片段 C 这些片段之间的导航是正确的,但是当我这样做时: Activity Base -> Fragment A -> Fragment B -> Fragment C -> Activity X

我无法获得正确的导航。当我按下 Activity X 时,它会转到 Fragment A(Activity Base)而不是 Fragment C。

有什么想法吗?谢谢

【问题讨论】:

  • 您需要在启动新活动之前保存您正在显示的片段,并在您回来时加载片段...看看startActivityForResult() 方法
  • 你是替换片段还是添加片段?

标签: android android-activity navigation fragmentmanager


【解决方案1】:

Activity Base 应该使用onSaveInstanceState 来存储当前的活动片段。然后它必须在onCreate(如果Bundle 参数不为空)或onRestoreInstanceState 中恢复该片段。

注意(来自documentation

大多数实现将简单地使用 onCreate(Bundle) 来恢复它们的状态,但有时在完成所有初始化之后[在 onSaveInstanceState] 中这样做会很方便,或者允许子类决定是否使用您的默认实现

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-02-29
    • 2013-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多