【问题标题】:Empty Listview inside of Fragment片段内的空列表视图
【发布时间】:2013-11-19 08:49:07
【问题描述】:

我有一个垂直的 LinearLayout 和一个 Listview 和一个大按钮里面。一切都在一个片段中。

我想做的是在执行某些操作后找不到任何内容时显示空列表。

由于它是 Fragment 而不是 ListActivity 我不能使用 ListView 内的空视图的概念来在列表为空时显示。

我正在使用此代码显示空列表(在 (MyFragment extends Fragment)->onCreateView 方法中调用):

ListView list2=(ListView)rootView.findViewById(R.id.scans_list);
View emptyView = inflater.inflate(R.layout.scanslist_empty,null);
((ViewGroup)list2.getParent()).addView(emptyView, 0); 
list2.setEmptyView(emptyView);

这可行,但最初列表位于按钮上方,而空列表位于按钮下方。 它可以修复还是我必须改变整个方法?

【问题讨论】:

  • 我不明白你为什么使用 addView

标签: android listview android-listview android-fragments


【解决方案1】:

在您的片段布局中添加 emptyView(TextViewImageView、任何您希望的 View 实现),使其成为 visible="gone" 并使用它而不是您当前拥有的。所以代码应该改成这样:

ListView list2=(ListView)rootView.findViewById(R.id.scans_list);
View emptyView = rootView.findViewById(R.id.my_empty_view);
list2.setEmptyView(emptyView);

这样,当适配器检查if it's empty 时,listView 将自动将其可见性更改为 GONE 并且空视图(如果存在)(在您的情况下为 true)将设置为 VISIBLE。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-17
    相关资源
    最近更新 更多