当显示活动时,Android会做一些事情

当显示活动时,Android会做一些事情,android,Android,为正在搜索的人回答: 当活动已可见时,请使用此代码执行以下操作: @Override public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); if (hasFocus) { // do something } } 如果活动也可以在代码发布后不久可见,请使用Androids生命周期方法(这里可能是onResume()): 原始问题:

为正在搜索的人回答:

当活动已可见时,请使用此代码执行以下操作:

@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);
    if (hasFocus) {
        // do something
    }
}
如果活动也可以在代码发布后不久可见,请使用Androids生命周期方法(这里可能是
onResume()
):

原始问题:

我的应用程序中的一个按钮启动一个活动,这需要一些时间来准备课程

为了让用户知道这一点,我启动了一个新的加载活动来启动实际的活动

在实际开始之前,需要显示此活动

但Android生命周期中的所有方法似乎都是在向用户显示活动之前调用的,如果我在显示我当前参与的活动之前启动了一个新活动,那么它将不再显示

我试过:

  • 在另一个线程中启动活动,但这不起作用,因为
    startActivity(…)
    似乎会阻止UI重新加载
  • 在开始活动之前等待几毫秒,但这看起来很脏

感谢您的帮助!请告诉我使用转发活动是否不是正确的解决方案

转发活动很好,但关键是使转发活动尽可能简单,否则您将面临相同的问题。请参见第3点上的链接。带有xml布局3的闪屏是最简单/最干净的,但是他们有很多非常酷的解决方案。这非常有意义,我没有想到,谢谢。我最终并没有使用这个方法,因为我想显示一些我用代码计算的东西,但它给了我一个想法,现在可以工作了。
@Override
protected void onResume() {
    super.onResume();
    // do something
}