首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android fragment事务监听器

Android fragment事务监听器
EN

Stack Overflow用户
提问于 2016-10-11 18:43:57
回答 2查看 2.9K关注 0票数 2

我需要监听何时执行片段事务,例如,当我用一个片段替换另一个片段时,而不调用addToBackStack()。FragmentManager类提供了一个addOnBackStackChangedListener回调,但是当我在没有调用addToBackStack的情况下执行片段替换时,它不会被执行。

编辑:监听操作是在一个类中执行的,该类只能访问活动实例及其片段管理器。

EN

回答 2

Stack Overflow用户

发布于 2016-10-11 20:15:53

您可以对所有片段使用基类。然后,您可以覆盖onDetach()方法。例如

代码语言:javascript
复制
public class BaseFragment extends Fragment {

@Override
public void onDetach() {
   // run code that needed by your library. e.g.
    if (getActivity() != null && getActivity() instanceof MainActivity) {
    ((MainActivity)getActivity()).someMethodToDetectOnDetach();
    }
    super.onDetach();
}

然后像这样扩展来自BaseFragment的片段

代码语言:javascript
复制
public class MyFragment extends BaseFragment {
// .....
}
票数 1
EN

Stack Overflow用户

发布于 2016-10-11 18:57:09

可以使用Fragment的onAttach()方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39975529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档