在我的应用程序中,我试图通过调用在 5 秒后更改视图的状态/显示postInvalidateDelayed(5000)
。
我对以下两种情况有疑问postInvalidateDelayed( )
和行为:onDraw( )
场景一:
- postInvalidateDelayed(5000) 在当前活动“活动 A”中调用视图“视图 V”
- 在无效事件可以传递到“视图 V”之前,用户导航离开当前的“活动 A”(即“活动 A”仍在活动堆栈上)
- 用户使用后退按钮/方法导航回“活动 A”
super.onBackPressed( )
(即“活动 A”未重新创建)
场景二:
postInvalidateDelayed(5000)
在当前活动“活动 A”中调用视图“视图 V”- 在无效事件可以通过按下“主页”按钮传递到“视图 V”之前,用户导航离开当前的“活动 A”(即“活动 A”仍在活动堆栈上)
- 用户通过再次启动应用程序导航回“活动 A”(即“活动 A”没有被重新创建)
在上述两种情况下,无效事件会被传递到“视图 V”还是会丢失无效事件?我观察到 invalidate 事件在这些场景中丢失了。确保在重新启动/恢复活动(活动 A)时可以传递此类无效事件的最佳方法是什么?
将不胜感激任何投入。谢谢。