android - 展开/折叠 listView 包含复选框时的重绘效果

标签 android checkbox drawing expandablelistview expandablelistadapter

我有一个可扩展 ListView ,其中包含 groupViwes 和组 childViews 中的复选框。 当选中一个/多个复选框时,会导致展开/折叠 listView 的任何 groupView 时出现重绘效果,请检查以下内容:

enter image description here

如您所见,当展开后折叠组 KG-1 时,组 grade 5 会向上移动到新位置,这会产生不良的闪烁效果名为 1 的组(及其子组)需要一段时间才能重新绘制未选中状态,因为它占据了 grade 5 已选中组的位置。

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

最佳答案

调用 setChecked() 后立即在 CheckBox 上调用 jumpDrawablesToCurrentState()。它将跳过 CheckBox 的状态更改动画。

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

关于android - 展开/折叠 listView 包含复选框时的重绘效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49965588/

相关文章:

android - 更改 TabPageIndicator 页脚和文本颜色 (ViewPagerIndicator)

java - 使用复选框和文本框作为小费计算器

javascript - 有没有办法在数组中获取复选框的选中值? [ react ]

css - 复选框选中的属性不起作用

ios - iOS 绘画应用的撤消/重做

android - 在Android设备上使用Angular 7播放音频

javascript - jQuery addClass 导致窗口在 Android 和 iPhone 上滚动回到顶部

ios - 如何在 Cocos2d 中拉直行尾?

java - 如何解决 "Expression expected"和 "cannot infer argument"错误?

c# - .NET控件(如Ms Paint)具有文本效果