调用Activity.OnStop时不调用Fragment.OnStop

问题描述 投票:0回答:1

我有ActivityA,其中包含FragmentFActivityA还包含NavigationDrawer基础结构。

当我启动应用程序 - 一切都很好。 有人称(其中包括):

ActivityA.OnStart
FragmentF.OnStart
ActivityA.OnResume
FragmentF.OnResume

..和内容显示。

但是,当我按下主页(最小化应用程序和显示主屏幕) - 问题出现了: ActivityA.OnStop被称为 没有叫FragmentF.OnStop

有趣的事实: - 如果我在NavigationDrawer中切换项目,则调用FragmentF.OnStop并在ActivityA中加载另一个片段的内容 - 在所有情况下(最小化NaviDrawer中的应用程序和切换内容)始终调用FragmentF.OnPause

作为一种解决方法,我将代码(预期在OnStop中工作)放到OnPause但是想知道: - 为什么没有叫FragmentF.OnStop - 如何调用它

我正在使用Xamarin(因此CamelCase namie convention :) - 但我不怀疑这个平台的bug,它看起来像Android本机行为。

android xamarin.android
1个回答
1
投票

首先,我不知道你的项目中有什么样的特定布局或使用其他插件。我在我的演示中测试它(Activity包含片段)。

GitHub.com/851265601/fragment demo

当我点击主页按钮时,OnstopFragment被称为此演示中的截图。此问题可能与其他原因有关,您是否使用Util.log生成它并捕获logcat中的日志。注意:不要在OnPause中进行耗时的操作

© www.soinside.com 2019 - 2024. All rights reserved.