在我的Android项目中,我有一个包含SwitchCompat
项的行的ListView
( Switch
小部件的AppCompat)。
当我滚动到列表中,并使用recycled
视图调用MyAdapter
的getView(...)
方法时,我的问题就出现了。我重新定义了正确的Switch
状态,但动画是可见的。
在这种情况下有没有防止动画的解决方案?
发布于 2015-10-09 00:57:13
调用jumpDrawablesToCurrentState()
跳过动画
switchCompat.setChecked(true);
switchCompat.jumpDrawablesToCurrentState();
发布于 2014-11-26 09:09:58
我终于找到了一个解决方案,但看起来并不是很干净:
ViewGroup viewGroup = (ViewGroup) view; // the recycled view
viewGroup.removeView(switch);
switch.setChecked(states[index]);
viewGroup.addView(switch);
如果有更好的解决方案,请分享。
发布于 2016-11-05 17:19:20
如果使用Android数据绑定,可能会出现列表中动画播放的问题。
要解决此问题,请在设置数据后运行binding.executePendingBindings()
方法-它将刷新当前帧中组件的绑定状态,而不会等待下一个绑定状态。
正如您可能已经猜到的那样,- next帧是动画
https://stackoverflow.com/questions/27139262
复制相似问题