如何解决当我刷出它时,我可以在 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 举报,一经查实,本站将立刻删除。