滚动时ListView行的动态高度发生变化(Android)

时间:2019-08-03 10:26:22

标签: android listview kotlin

我有一个ListView,每一行都有一个动态高度。要更改每行的高度,我在getView()函数(适配器)中添加了以下内容:

firstView.post {
    firstView.layoutParams.height = textView.height
    firstView.requestLayout()
}

因此,行的高度取决于TextView的高度。一切正常,没有问题。现在,我添加了一个自动的“滚动功能”,这意味着它将自动从第一行滚动到最后一行。它起作用了,但问题出在这里:每次滚动之后,firstView的高度会改变一会儿,然后返回到正确的高度。我怀疑每次滚动后它都会调用getView()函数,但是我不知道如何解决这个问题。

更新1:

listView.setItemChecked(position, true)行可能是每次滚动后高度发生变化的原因。当我删除此行时,高度不会改变得更多,但不会再选择ListView行,因此在滚动时选择每一行很重要。

0 个答案:

没有答案