【发布时间】:2017-05-27 06:20:28
【问题描述】:
我正在开发一个广泛使用动画的 Android 应用程序。我面临的问题是,如果用户不小心或故意按下后退按钮,前一个活动会启动,这很好,但不再可见的活动继续在后台运行。 Toasts 正在显示,媒体正在播放。现在简单的解决方案是通过 onBackPressed() 中的引用检查任何正在运行的动画或正在运行的媒体并相应地停止。有没有其他方法可以完全杀死该活动?因为我没有为该活动中的每个动画保留参考。似乎没有任何效果。请帮忙。
【问题讨论】:
-
那么您希望该活动在后台停止工作吗?
-
是的。即使我看不到该活动,它也会继续在后台运行。正在显示祝酒词,并从该活动中听到声音。
-
onBackPressed()在用户按下 BACK 时被调用。除非您已覆盖它,否则默认行为会调用finish(),这应该会完成您的Activity。如果您在Activity中启动了额外的线程或其他后台处理,您将需要自己终止这些事情。请给我们一些相关的代码。
标签: android animation android-activity onbackpressed