我的Android Widget停止刷新视图

时间:2013-11-09 16:03:22

标签: android animation view android-widget invalidation

我写了一个Android时钟小部件。 小部件包括gif动画。

我的小部件拥有自己的服务,可以维护其视图。和播放动画的线程。

由于不明原因,在小部件启动后的某个时间点,它停止播放动画,就好像视图freez一样。起初我以为底层服务破了,或者其中一个线程陷入僵局。

我发现一切都运行得很好,只有视图不会改变。

如果这是一个普通的应用程序视图,我原以为我应该在视图上调用invalidate() - 但是RemoteViews没有这样的调用。

任何人都有类似问题的经验吗?

1 个答案:

答案 0 :(得分:-1)

我认为您可以从非UI线程调用invalidate()。 invalidate()方法只需要在UI线程中调用。如果是这种情况,请使用postInvalidate()而不是invalidate()。

有关详细信息,请参阅以下文档,

http://developer.android.com/reference/android/view/View.html#postInvalidate%28%29