我有一个ListFragment,它有一个recyclerview,单击任何项都可以打开DetailsFragment。details片段在底部包含另一个recyclerview,显示“MORE ITEMS”。现在,单击这些项中的任何一项都应该打开该特定项的DetailsFragment。基本上,该片段需要刷新。
在过去,我只会用fragmentManager替换fragment。我该如何刷新fragment呢?我该如何创建一个指向同一fragment的action呢?
我有一个ListFragment,它有一个recyclerview,单击任何项都可以打开DetailsFragment。details片段在底部包含另一个recyclerview,显示“MORE ITEMS”。现在,单击这些项中的任何一项都应该打开该特定项的DetailsFragment。基本上,该片段需要刷新。
在过去,我只会用fragmentManager替换fragment。我该如何刷新fragment呢?我该如何创建一个指向同一fragment的action呢?
2条答案
按热度按时间3hvapo4f1#
创建一个从DetailsFragment到DetailsFragment的动作并导航到该动作,如Alex所述
7d7tgy0s2#
更新片段的最佳方式是在片段或活动/片段之间使用共享的视图模型。
您可以在www.example.com阅读文档https://developer.android.com/topic/libraries/architecture/viewmodel#sharing
Activity或Fragment A正在执行某个操作,在其结束时更新视图模型。Fragment B(需要更新的)正在观察相同的视图模型,并可以更新UX中的值。
创建重新加载片段的操作是耗时的,并且不总是适合每个用例。