我正在使用自定义的SimpleCursorAdapter。如果在数据库/游标中找不到任何条目,则目前我的列表保持为空。现在,如果游标/数据库中没有条目,我想在列表中显示一条消息。我该如何处理这个事件?
答案 0 :(得分:5)
只需将您想要显示的视图放在XML中,并为其指定任何您喜欢的ID,例如:
<ListView
android:id="@+id/myList"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- view to be shown/hidden on empty list above -->
<TextView
android:id="@+id/emptyListElem"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:text="Nothing to show!" />
然后在Activity的 onCreate()方法中,在listView对象上调用 setEmptyView()。 ListView应该处理显示/隐藏视图对象,具体取决于列表是否为空。
View empty = findViewById(R.id.emptyListElem);
listView.setEmptyView(empty);
答案 1 :(得分:3)
如果您的ListView以xml表示,您可以添加一个具有特定android:id的TextView,如果列表为空,它将自动显示您的消息,如下所示:
<ListView android:id="@id/android:list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/white" />
<TextView android:id="@id/android:empty"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/white"
android:text="No Data exist"
android:textSize="16dip"
android:textColor="@color/black"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"/>
你必须使用@ id / android:empty才能工作。