Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.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 如何显示使用自定义适配器填充数据的空ListView_Android_Android Listview - Fatal编程技术网

Android 如何显示使用自定义适配器填充数据的空ListView

Android 如何显示使用自定义适配器填充数据的空ListView,android,android-listview,Android,Android Listview,大家好,安卓开发者 我有一个listview,它最初填充了一些在onCreate方法中不是空的列表。当用户在搜索框中输入时,listview会得到更新。我使用自定义适配器来实现这一点。 一切正常 但是我想先显示空的listview,然后在搜索框中显示为用户类型,listview应该使用搜索查询进行更新。就像搜索界面一样。如何执行此操作?有什么帮助吗?您可以为适配器设置空值,然后它将向用户显示一个空列表 分配给列表的空间将保持不变 yourList.setAdapter(null); 只需使列表

大家好,安卓开发者

我有一个listview,它最初填充了一些在onCreate方法中不是空的列表。当用户在搜索框中输入时,listview会得到更新。我使用自定义适配器来实现这一点。 一切正常


但是我想先显示空的listview,然后在搜索框中显示为用户类型,listview应该使用搜索查询进行更新。就像搜索界面一样。如何执行此操作?有什么帮助吗?

您可以为适配器设置空值,然后它将向用户显示一个空列表 分配给列表的空间将保持不变

yourList.setAdapter(null);

只需使列表在xml中不可见即可:

<ListView
    android:id="@+id/somelist"
    adnroid:visibility="gone" />

不要为列表视图设置适配器当您单击搜索时,您可以设置适配器或使适配器可见或不可见。您想要的是使列表视图在xml中不可见,并在更新列表视图的搜索框事件中设置它可见。您的解决方案似乎有效,我将listview隐藏在xml文件中。但我在PostTextChanged方法中使用TextWatcher执行搜索,因此当用户键入listview时,会填充搜索结果,因此我无法使listview在每次文本更改操作中都可见,因为它会像以前一样显示整个列表。您可以使用IF检查包装setVisibility调用,例如:IF!somelist.isVisible{//set visible}当我将空列表传递给setAdapter时,它会将错误显示为NullPointerException在获取自定义适配器的getCount方法中的list.size时,您必须启动列表,如list=findviewbydr.id.listid;然后设置空适配器
somelist.setVisibility(View.VISIBLE);