java - 在android中滚动 ListView 时如何不刷新

标签 java android

我不想刷新我的 ListView

当我滚动屏幕 ListView 时得到刷新...

我不希望它发生...我该怎么办

  <ListView android:id="@+id/android:list"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:layout_below="@id/edittxt_username"
              android:scrollbars="vertical"
                android:layout_marginBottom="0sp"
              />

确定编辑我真正的需要

我在我的 ListView 中使用了一个复选框`

final CheckBox chb = (CheckBox) v.findViewById(R.id.editcheckbox);

                    chb.setOnClickListener(new OnClickListener() {

                        @Override
                        public void onClick(View view) {
                            if (chb.isChecked() == true) {
                                CheckedMessages.add(f);

                            } else if (chb.isChecked() == false) {
                                CheckedMessages.remove(f);
                            }
                        }
                    });`

假设列表中有 20 个项目..我检查第一个..滚动后我看到第 6 个项目被选中...再次滚动我看到第 13 个项目被选中...我认为这可能是由于刷新...这是什么原因??

最佳答案

ListView 滚动时,它使用 ListAdapter 来显示新项目。每次新项目变得可见时,ListView 都会要求适配器刷新该项目的 View 。此外,ListView 可能出于性能原因缓存某些项目的 View 。

我不确定你到底想实现什么,但你不能禁用 ListView 刷新。这基本上是首先实现 ListView 的原因之一:智能刷新。

你应该描述你想要实现的目标,我感觉这与 ListView 刷新自身无关。

关于java - 在android中滚动 ListView 时如何不刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6127190/

相关文章:

java - 如何使用定时器

android - 通过在 qt 中从 C++ JNI 发送字符串在 Android 中显示 Toast

android - 如何在使用 Robolectric 时计算测试覆盖率

安卓。将联系人显示为 ListView

android - 如何从 Observable 手动请求事件?

android - 如何从多项目目录的顶层禁用 Android Gradle 插件中的 lint abortOnError

java - mule的 'BlockingTransferInputStream'是什么?我的实际有效负载在哪里?

java - 为什么从 main 读取非静态变量会出现问题?

java - 将正则表达式添加到列表中以进行排序

显示素数的 Java 程序