Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android自定义光标适配器和BindView_Android_Sqlite_Cursor - Fatal编程技术网

Android自定义光标适配器和BindView

Android自定义光标适配器和BindView,android,sqlite,cursor,Android,Sqlite,Cursor,好吧,我希望我不会因为问了这么一个模棱两可的问题而受到抨击,但我被难住了,甚至不知道怎么问这个问题。我将尽可能地沟通我的问题,并在必要时澄清 我使用MergeCursor合并了两个游标。我还有一个自定义游标适配器。在自定义光标适配器中,我已覆盖BindView。我注意到一些奇怪的行为,其中项目没有显示在我的listview中。基本上,listview中的每一行都有两个文本视图。最后一行中有一个字段为空 我一步一步地浏览BindView,发现它执行了3次。我的listview中只有7个项目(即7x

好吧,我希望我不会因为问了这么一个模棱两可的问题而受到抨击,但我被难住了,甚至不知道怎么问这个问题。我将尽可能地沟通我的问题,并在必要时澄清

我使用MergeCursor合并了两个游标。我还有一个自定义游标适配器。在自定义光标适配器中,我已覆盖BindView。我注意到一些奇怪的行为,其中项目没有显示在我的listview中。基本上,listview中的每一行都有两个文本视图。最后一行中有一个字段为空

我一步一步地浏览BindView,发现它执行了3次。我的listview中只有7个项目(即7x3)。除第7项中的一个字段外,所有字段均显示在屏幕上。我注意到,在通过BindView的两次过程中,缺少一个字段值

我想知道的是,为什么BindView执行了3次。所以我说3是指3x7。列表中有7项,因此它在BindView中循环21次。我希望我说的有道理

如果这还不清楚,请不要猛击我。我很高兴修改或提供其他信息

我想知道的是,为什么BindView执行了3次。所以我说3是指3x7。列表中有7项,因此它在BindView中循环21次。我希望我说的有道理


当ListView进入测量阶段时,它将在适配器上调用newView和bindView,以便设置行(其子行)的维度并确定自己的维度。在此过程中,它不会保留视图,因此在屏幕上绘制视图时需要重新创建视图。您可以查看源代码,以便准确了解它在做什么。

谢谢您的回答。我认为缺少项的问题与setContentView()有关。当我的活动第一次运行时,列表中的内容丢失。当活动恢复时,所有项目都在那里。我创建了一个名为initialize()的东西,它从处理列表填充的onResume()运行。从onResume()调用时,一切正常。如果在onCreate()之后调用它,则缺少我的项。