在Android应用程序中放置无限循环来处理补间

时间:2016-03-11 18:08:49

标签: android loops tween

我想在我的纯Android应用程序中使用通用补间引擎,并了解我需要在某个地方放置一个循环,它将每帧更新tweenmanager。我之前在游戏项目中使用了这个,我可以访问所提供的游戏循环,但在纯Android应用程序的情况下,我将在哪里创建此循环,以及在我的应用程序打开/关闭时处理此问题的最佳方法是什么?暂停/恢复等?

我最好在onResume方法中为每个活动创建一个新线程并在那里启动循环并在onPause方法中结束循环?或者更好的是创建一个充当“活动管理器”并且始终可用的类?如果是这样我怎么做?

2 个答案:

答案 0 :(得分:0)

我在https://code.google.com/archive/p/java-universal-tween-engine/wikis/AndroidUI.wiki找到了一些有用的文档,似乎是正确的'实现这一目标的方法是为onResume()中的每个活动创建一个新循环,并在onPause()中结束循环

答案 1 :(得分:0)

API级别16中有一个名为Choreographer的API可用。这是使主线程泵送事件保持在每秒60帧的事情。您可以注册要在下一帧执行的回调,然后在该回调中注册以在下一帧再次运行它。这是在每个帧上以最接近完美的时序进行调用的最可靠方式(只要主线程没有以一种可能导致帧丢失的方式被阻塞)。

你的回调都将在主线程上调用,所以要小心自己阻止主线程。所以保持你的工作超级快。