Android ListView 元素 invalidate() 不重绘
Android ListView element invalidate() does not redraw
在我的 Android 应用程序中,我有一个包含多个元素的 ListView。对于某些用户输入(触摸事件),ListView 中的一个元素会在自身上调用 invalidate()。问题是有时,元素会重新绘制自己,有时则不会。当它在调用 invalidate() 后没有重绘时,我需要滚动 ListView 以获得所需的重绘。当然,我不想要那样。
值得一提的是,我从不调用 listview.invalidate() 而只调用 element.invalidate()。有人知道如何解决这个问题吗?
随着年龄的增长,我们会变得更聪明。我的问题是我没有在适配器的 getView
方法中使用 convertView
,而是将所有视图保留在 ArrayList 中。不好的做法,女士们,先生们。使用 convertView
,一切都会顺利进行。
在我的 Android 应用程序中,我有一个包含多个元素的 ListView。对于某些用户输入(触摸事件),ListView 中的一个元素会在自身上调用 invalidate()。问题是有时,元素会重新绘制自己,有时则不会。当它在调用 invalidate() 后没有重绘时,我需要滚动 ListView 以获得所需的重绘。当然,我不想要那样。 值得一提的是,我从不调用 listview.invalidate() 而只调用 element.invalidate()。有人知道如何解决这个问题吗?
随着年龄的增长,我们会变得更聪明。我的问题是我没有在适配器的 getView
方法中使用 convertView
,而是将所有视图保留在 ArrayList 中。不好的做法,女士们,先生们。使用 convertView
,一切都会顺利进行。