【问题标题】:re-draw effect on expanding/collapsing listView contains CheckBoxes重新绘制展开/折叠 listView 的效果包含 CheckBoxes
【发布时间】:2018-04-22 11:50:33
【问题描述】:

我有一个可扩展列表视图,其中包含 groupViwes 和组子视图中的复选框。 在选中一个/多个复选框时,它会导致重新绘制对ListView的任何GroupView的展开/折叠,请检查以下内容:

如您所见,在展开后折叠组 KG-1 时,组 grade 5 被移动到一个新位置,这给名为 1 的组(及其子组)带来了不好的闪烁效果重新绘制未选中状态需要一段时间,因为它占据了选中组的位置,即grade 5

那么,如何摆脱重绘效果呢?如果这样可以解决问题,甚至可以推迟崩溃。

【问题讨论】:

  • stackoverflow.com/questions/33876792/… 或类似的。在我看来,更简单的方法是使用没有动画的自定义复选框。
  • @ADM 实际上,不知道如何,但是禁用提供的链接中答案中提到的动画确实解决了问题,如果需要,您可以引用它并添加为答案,谢谢你非常喜欢。
  • 它与setChecked(bolean checked, boolean shouldAnimate) 非常相似。整个想法是跳过动画。这就是它起作用的原因。

标签: android checkbox drawing expandablelistview expandablelistadapter


【解决方案1】:

在拨打setChecked() 后立即拨打CheckBox 上的jumpDrawablesToCurrentState()。会跳过CheckBox的状态变化动画。

checkBox.setChecked(false);
checkBox.jumpDrawablesToCurrentState();

【讨论】:

    猜你喜欢
    • 2018-02-28
    • 2014-11-25
    • 1970-01-01
    • 2011-07-20
    • 1970-01-01
    • 2019-03-23
    • 2011-07-08
    • 1970-01-01
    • 2018-05-16
    相关资源
    最近更新 更多