我有一个包含2名列表视图的片段。我尝试为它们中的每一个设置EmptyView。 我试图通过XML使用@ id/android:empty和通过代码添加它们,两次都得到忽略。多个列表视图和空视图
任何人得到了它的两个列表视图和diffent空视图的工作?
我有一个包含2名列表视图的片段。我尝试为它们中的每一个设置EmptyView。 我试图通过XML使用@ id/android:empty和通过代码添加它们,两次都得到忽略。多个列表视图和空视图
任何人得到了它的两个列表视图和diffent空视图的工作?
这是工作,你必须确保该View
(为空的状态)添加到您的布局,其中ListView
是英寸
此外,Adapter
为您ListView
必须null
或isEmpty()
必须为真才能显示空白视图。
如果你有问题还是,张贴一些代码。
我觉得@Leandros是在正确的轨道上,你需要确保每个列表的设置是否正确。这听起来像是当你在同一个xml中定义了两次@id/android:empty
时,可能会有不匹配。你可能需要给他们唯一的id,然后把它们连接到java中。
你的XML可能是这个样子:
...
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<ListView
android:id="@+id/list1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:id="@+id/empty1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="List 1 is empty"
/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<ListView
android:id="@+id/list2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<TextView
android:id="@+id/empty2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="List 2 is empty"
/>
</LinearLayout>
...
然后在该片段中,你需要抓住的意见后再进行安装。
...
ListView list1 = (ListView)findViewById(R.id.list1);
View empty1 = findViewById(R.id.empty1);
list1.setEmptyView(empty1);
ListView list2 = (ListView)findViewById(R.id.list2);
View empty2 = findViewById(R.id.empty2);
list2.setEmptyView(empty2);
...
如果你真的想要一个更复杂的空视图,你可以在你的xml中包含另一个布局而不是TextView。
...
<include layout="@layout/empty"
android:id="@+id/list1"
/>
...
<include layout="@layout/empty"
android:id="@+id/list2"
/>
...
我希望这有助于!
如何为多个listview设置单个空视图? –
我做了这个,它不工作。这两个listview都在LinearLayout中,这个textview应该是空视图。 – Kitesurfer