我正在为我的一个应用程序制作交互式演练,在几个地方,alpha 动画和一些其他各种 UI 更改(例如复选框按下状态)会非常棒。
演练有一个后退和下一步按钮。基本思想是下一个按钮将启动动画(可能作为一个线程?),如果在动画中的任何时候按下后退按钮,动画将停止。
我研究了内置的 Android 动画库,但发现还有很多不足之处。我的下一个想法是线程,但我知道我无法从外部线程更改 UI。此外,我想为我的后退按钮监听器打开 UI 线程。
关于如何实现这些简单的动画有什么想法吗?
最佳答案
你是对的,你不能直接从另一个线程更新 UI 元素。但是您可以使用 Handlers 间接执行此操作。处理程序基本上是一种 IPC,允许您将消息排队到 UI 以进行处理。所以你所做的基本上是在你的 Activity 中创建一个处理程序并将这个处理程序传递给你的进程线程。当您想从进程线程在 UI 中更新某些内容时,只需执行 mHandler.sendEmptyMessage(UPDATE_SOME_VIEW)。
看看处理程序 here .
关于Android:制作一个简单的动画集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9436429/