Android ListView项目中的动画不显示';滚动后无法工作

Android ListView项目中的动画不显示';滚动后无法工作,android,Android,我在一个listview项目中有动画。滚动列表后,当带有动画的列表项开始不可见时,我将滚动回带有动画的listview项,但动画不再工作 getView() method : iv.setImageResource(R.drawable.anim); iv.requestFocus(); ((AnimationDrawable) iv.getDrawable()).start(); ? 更新: 这是一个错误的问题还是没有任何想法?您假设每次滚动视图(或对您可见)时

我在一个listview项目中有动画。滚动列表后,当带有动画的列表项开始不可见时,我将滚动回带有动画的listview项,但动画不再工作

getView() method :

iv.setImageResource(R.drawable.anim);
iv.requestFocus();              
((AnimationDrawable) iv.getDrawable()).start();
?

更新:


这是一个错误的问题还是没有任何想法?

您假设每次滚动视图(或对您可见)时,动画都将开始播放。但这不是真的,视图可能不可见,但仍在内存中,因此当您滚动视图并使其可见时,将不会调用getView()方法。这就是为什么将动画放入列表中是一种不好的做法。如果这是您最需要做的事情,我建议您自己实现整个视图。

您的解释是准确的,但这并不意味着您不应该在列表项中使用动画。很多应用程序都能非常有效地做到这一点:你只需要了解
ListView
是如何管理列表项的。@DanHulme但是你如何解决何时开始播放动画的问题呢?动画随机开始或始终播放的情况除外。