微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当我刷出它时,我可以在 Kotlin 中正确完成一个 android 应用程序吗?

如何解决当我刷出它时,我可以在 Kotlin 中正确完成一个 android 应用程序吗?

我希望,我可以正确地表达我的问题并且可以理解。

当我在 Kotlin 中编写 Android 应用程序时,我通常有一个按钮来关闭应用程序,例如通过编写文件或类似的东西来完成它。 现在,有时我不是用按钮完成它,而是把它刷出来。然后,文件没有写入..

是否有 Kotlin 语句来捕捉“滑动”并执行一些代码?当我膨胀另一个视图时,最后我有一个dismiss语句或dismiss.listener并且可以做一些代码

示例:

dialog.dismiss()   or popupwindow.dismiss()

那么问题:是否有dismiss.app或类似的东西?

解决方法

当您的应用程序的 Activity 被销毁时(用户将其滑开,或者系统终止应用程序以释放一些资源)it goes through the usual lifecycle steps,以 onDestroy 结尾。>

这些步骤还会被推送到任何观察该 Activity 生命周期的生命周期感知组件,包括 Fragment(如 DialogFragment) - 因此 will also get an onDestroy() call。 Fragment 也可以在其他时间销毁,但如果需要,您可以查看 Activity 的生命周期以了解那里发生了什么。


但实际上,作为一般规则,您希望将数据保存在 onStop() 之类的内容中,当 Activity/Fragment 将不再可见时,即进入后台。这是确保您已保存所有重要数据和状态的好时机,因为用户可能不会回来,而且您无法确定 onDestroy 会被整齐地调用(例如可能会崩溃,或者手机可能会突然断电)。

不要依赖于使用 onSaveInstanceState() 回调持久化数据 - 这是为了保存 UI 状态,如果用户退出应用程序/将其刷掉,那就算了作为他们下次加载应用程序时的全新开始,so onSaveInstanceState won't be called(因为未保存 UI 状态)。改用 onStop(或 onPause,如果您愿意 - 请查看这些链接以了解有关区别的更多信息)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。