我在android中有这个listview。现在我把textview设置为我的listview的emptyview,所以只有当listview为空时它才会显示。问题甚至列表视图都有数据。没有数据仍在显示。但经过7件或8件之后它就会消失。为什么呢?
<de.timroes.android.listview.EnhancedListView
android:id="@+id/data_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#C0C0C0"
android:minHeight="30dp" >
</de.timroes.android.listview.EnhancedListView>
<TextView
android:id="@android:id/empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="No Data"
android:textSize="20sp" />
</LinearLayout>
我设定它的方式
lv = (EnhancedListView) view.findViewById(R.id.data_list);
lv.setAdapter(adapter);
lv.setEmptyView(emptyText);
示例输出
答案 0 :(得分:4)
首先,您的TextView应具有GONE的初始可见性:
android:visibility="gone"
其次,名称
android:id="@android:id/empty"
保留给ListActivity / ListFragment,因此由Android本身自动管理
所以,我使用了一个类似的名字......这是不同的
android:id="@+id/txtEmpty"
最后但并非最不重要的是,在我的代码中我做了:
// Set the empty TextView
txtEmpty = (TextView) v.findViewById(R.id.txtEmpty);
txtEmpty.setText(res.getString(R.string.no_data));
elv.setEmptyView(txtEmpty);
将elv作为我的ExpandableListView的名称(在您的情况下为ListView)