0

我在网上看了很多,但只找到了如何每秒更改文本或显示甚至几毫秒的示例。

当秒变时,我正在使用这些示例来更改图片,但计时器不再准确。在图像更改时,应用程序会随机延迟大约 20 毫秒或 200 毫秒响应。

我正在使用 Runnable 类postDelayAsynTaskwhereonPostExecute刷新 UI,但两者在延迟时的工作方式完全相同。

每秒更换图片的最佳做法是什么?在未来,我有一个想法,每秒开始 5 张图像的动画(更花哨的时钟计时器)。

我会发布我的代码,但现在真的是我到目前为止找到的所有示例的混乱。

4

1 回答 1

1

好吧,您还没有共享代码,所以我只能猜测,

我建议已经将图像作为位图或可绘制对象初始化,可能在哈希表中。

之后,启动您的计时器并将替换图像的代码放置在正确的位置。 重点是除了替换线程中的图像之外,您不应该花时间。

编辑: 如果你想通过代码做到这一点:

在开始你的动画之前创建一个位图数组而不是可绘制的 ids(或 Drawble 类的对象)。为什么,因为您需要节省系统花费在从您在数组中提供的 id 创建位图然后设置为您的图像视图的时间。

此外,您可以为此使用 AnimateDrawbles,这是非常容易优化和可靠的。

这是一个样本。只需根据需要调整 xml 中的持续时间变量即可。

于 2013-01-14T12:19:01.453 回答