【问题标题】:Child activity from ActivityGroup just "sometimes" calling onBackPressed()来自 ActivityGroup 的子活动只是“有时”调用 onBackPressed()
【发布时间】:2012-01-02 06:16:09
【问题描述】:

我有一个 ActivityGroup 有几个子活动。

最近我发现onBackPressed 方法并不总是在子Activity 上调用,而是在父Activity(activityGroup)中调用。

经过一些测试后,我发现onBackPressed 仅在子级具有焦点 EditText 时才被调用。如果 EditText 没有获得焦点或者没有 EditText(即使还有其他控件,例如按钮或复选框),那么它根本不会被调用。

如果孩子收到此调用,则父母不会收到。

有谁知道为什么 Activity 的行为会发生变化?我可以在子 Activity 上执行一些方法,以便它始终获得此焦点并获得 onBackPressed 方法首选项吗?

【问题讨论】:

    标签: android android-activity android-edittext activitygroup


    【解决方案1】:

    嗯,最简单的实现是创建一个方法,当按下后退按钮时由 parent->currentChild 或子级调用。

    【讨论】:

    • 谢谢你htafoya...我在我的应用程序中遇到了同样的问题。我用这篇文章解决了这个问题。
    【解决方案2】:

    新年祝福htafoya....确保你在onCreate函数之外定义了onBackPressed函数。很多时候,你已经在 onCreate 函数的循环中声明了 onBackPressed。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-11
      • 1970-01-01
      • 2022-01-07
      • 2011-05-15
      相关资源
      最近更新 更多