【问题标题】:onPause() how to determine if a new app activity is being called or if the app is being paused entirely?onPause() 如何确定是否正在调用新的应用程序活动或应用程序是否完全暂停?
【发布时间】:2012-12-21 19:20:09
【问题描述】:

在 onPause 中,我如何确定是调用了新的应用程序活动还是完全暂停了应用程序?这对于动画到选项屏幕(使用左推动画)或动画到主屏幕(使用缩小动画)很有用。

当用户按下主屏幕时,我只会在 onPause 中收到此事件的通知,以便我可以将动画覆盖到主屏幕。但如果我这样做,我也会将动画覆盖到其他屏幕,并且在某些情况下我想自定义它。

【问题讨论】:

  • 正如您所知道的,当您启动活动时,您可以使用标志或任何其他方法来设置您已调用 startActivity() 并在 onPause() 中检查它。这不是一个花哨的解决方案,但它只涉及几行代码。

标签: android


【解决方案1】:

当用户按下Home 按钮时,将调用Activity 的以下方法。 您可以放置​​您想做的代码。

@Override
protected void onUserLeaveHint() {
    super.onUserLeaveHint();
    Log.d("TAG","Home Button Pressed");
    //some code here..
}

【讨论】:

  • 试过这个,它也被我的应用程序调用其他活动:| (或者至少 X86 模拟器是这种情况)
【解决方案2】:

实现 onkeydown 并检查 KEYCODE_HOME。这样,当用户进入主屏幕时,您会收到通知。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-30
    • 1970-01-01
    • 2017-03-22
    • 2011-02-16
    • 1970-01-01
    相关资源
    最近更新 更多