下课睡觉 2016-12-02 06:49 采纳率: 16.7%
浏览 4376
已采纳

FragmentActivity被销毁了,怎么销毁与之相关的Fragment

    是这样的,我写了一个Activity,继承的是FragmentActivity,里面用到了FragmentTabHost,用FragmentTabHost加载了四个fragment,
    每个fragment里面都有listview或者是viewpager,但是我发现,当我进入这个activity之后,马上点击back键,程序就会崩掉,原因是每个fragment里面的listview都设置了adapter,adpater里面加载布局时都会用到Context,而就是Context这热力报了null的错误,网上说改写FragmentActivity的onsaveInsatanceState方法,注释掉即可,但是没用,adapter还是运行到了那一步,还是崩掉了。请问有没有什么好方法来管理这些fragment啊?
  • 写回答

3条回答 默认 最新

  • wpanpan_lucky 2016-12-02 07:12
    关注

    在fragment中加载完数据是要判断当前的fragment是否还与Activity关联的
    /**
    * 根据 Fragment 生命周期
    * 判断 当前 fragment 是否还存在于Activity中
    *
    * @return
    */
    public boolean hasExist() {
    return isAdded() && !isDetached();
    }
    如果不存在关联,也就是返回false的时候你需要return,不再往下执行的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64
  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示