【问题标题】:ListView in Fragment backstack still calling getView()Fragment backstack 中的 ListView 仍在调用 getView()
【发布时间】:2015-01-22 05:52:13
【问题描述】:

我有一个Fragment,其中包含一个ListView,比如FragmentA,当我添加另一个包含另一个ListView的片段时,比如FragmentB

getFragmentManager().beginTransaction()
    .add(R.id.fragment_container, FragmentB)
    .commit()

我注意到即使顶部片段现在是 FragmentBFragmentA 中的 ListView 中的 getView() 仍然被调用,有什么理由以及如何防止这种行为?

【问题讨论】:

    标签: android listview fragment fragment-backstack


    【解决方案1】:

    您将碎片堆叠在一起。

    使用replace 代替add 替换该容器中的任何现有片段。

    【讨论】:

    • replace 意味着我无法回到FragmentA,对吗?
    • @SiGanteng 不,不是。只要你把交易添加到backstack。
    • 好的,那我试试,谢谢。我直觉地认为替换意味着取出(删除)该视图中的任何片段并替换=/。
    猜你喜欢
    • 2015-11-28
    • 1970-01-01
    • 1970-01-01
    • 2015-09-09
    • 1970-01-01
    • 1970-01-01
    • 2023-02-21
    • 2012-08-04
    • 1970-01-01
    相关资源
    最近更新 更多