当Activity停止/重新启动时,postInvalidateDelayed()和onDraw()行为

时间:2013-01-15 14:50:27

标签: android

在我的应用程序中,我试图通过调用postInvalidateDelayed(5000)在5秒后更改视图的状态/显示。

我对以下两种情况中的postInvalidateDelayed( )onDraw( )行为有疑问:

情景1:

  1. postInvalidateDelayed(5000)在当前活动“活动A”中调用了“视图V”视图
  2. 用户导航离开当前的“活动A”,然后将无效事件传递到“视图V”(即“活动A”仍在活动堆栈上)
  3. 用户使用后退按钮/方法super.onBackPressed( )导航回“活动A”(即“活动A”未重新创建)
  4. 情景2:

    1. postInvalidateDelayed(5000)在当前活动“活动A”中调用了“视图V”视图
    2. 用户导航离开当前的“活动A”,然后通过按“主页”按钮将无效事件传递到“视图V”(即“活动A”仍在活动堆栈上)
    3. 用户再次启动应用程序导航回“活动A”(即“活动A”未重新创建)
    4. 在上述两种情况下,会将无效事件传递给“View V”,还是会丢失invalidate事件?我观察到这些场景中的invalidate事件丢失了。确保在重新启动/恢复活动(活动A)时可以传递此类无效事件的最佳方法是什么?

      非常感谢任何投入。感谢。

1 个答案:

答案 0 :(得分:0)

需要什么?您可以在postInvalidateDelayed(5000)。{/ p>中致电onResume()