当前位置: 首页 > 知识库问答 >
问题:

如何用RecyclerView显示空视图?

冯曾笑
2023-03-14

我用于在布局文件中放置一个特殊视图,如ListActivity文档中所述,以便在没有数据时显示。此视图的id为“android:id/empty”

<TextView
    android:id="@android:id/empty"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/no_data" />

共有1个答案

羊舌成周
2023-03-14

在定义RecyclerView的相同布局上,添加TextView:

<android.support.v7.widget.RecyclerView
    android:id="@+id/recycler_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:scrollbars="vertical" />

<TextView
    android:id="@+id/empty_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:visibility="gone"
    android:text="@string/no_data_available" />

onCreate或适当的回调中,您可以检查向RecyclerView提供内容的数据集是否为空。如果数据集为空,则recyclerView也为空。在这种情况下,消息将出现在屏幕上。如果不是,则更改其可见性:

private RecyclerView recyclerView;
private TextView emptyView;

// ...

recyclerView = (RecyclerView) rootView.findViewById(R.id.recycler_view);
emptyView = (TextView) rootView.findViewById(R.id.empty_view);

// ...

if (dataset.isEmpty()) {
    recyclerView.setVisibility(View.GONE);
    emptyView.setVisibility(View.VISIBLE);
}
else {
    recyclerView.setVisibility(View.VISIBLE);
    emptyView.setVisibility(View.GONE);
}
 类似资料:
  • 问题内容: 我需要添加一个可以列出an元素的位置,并且我发现有一种更新更好的显示列表的方法- 。 我的问题是如何在我的应用程序中实现这一点。我发现我需要使用,但是我不太了解如何正确实现整个过程。 如果你想知道,我指的是这个的文档的例子,这是我一直在读。 编辑: 更新我的代码后,它说它无法解析该符号: 所以我以为我把它放错了地方(很可能),实际上我把它放到Adapter类的末尾,就在Method之后

  • 我想要一个recyclerview,当第一个应用程序打开时,然后在创建时从服务器获取一些数据,当向上滚动时,会显示recyclerview下方的进度条,当向上滚动到服务器时再次点击URL,并在先前获取的数据下方获取更多数据。但我知道当我第二次点击URL时,它会刷新页面,并在第二次点击时只显示从服务器获取的数据,但我想要第一次和第二次点击的响应。 对不起,我说英语 以下是我的主要活动代码: }

  • 我试图使用Reform2显示来自虚拟服务器(JSON服务器)的JSON数据,并将其显示在片段中的RecyclerView中。到目前为止,正在发生以下事件(使用日志信息发现): 主片段<代码>字符片段(CharactersListFragment)。kt创建已启动 只调用了。它正在返回0 未调用OnCreateViewHolder()和onBindViewHolder() 成功地从服务器获取数据并将

  • 首先,我看到了这个问题:在使用Android的RecyclerView时,在滑动行下添加带有文本/图标的彩色背景 然而,即使标题说明“With text/icon”,答案也仅涵盖使用对象绘制矩形。 现在我已经实现了绘制绿色矩形;然而,我想让它更明显的是什么将发生的添加“完成”按钮,就像在下面的屏幕截图。 首先,它只画了一个绿色的小方块来包装我的“完成”图标(在下面的屏幕截图中看到的视图的红色部分来

  • 我使用的是一个模板,我用一个改装2请求替换了占位符数据,该请求从URL解析数据的JSON文件,并将其放入对象列表中。我遇到了一个问题,首先执行改装调用并返回items=0,然后使用值items=0进一步执行代码,在调试器中执行了许多步骤后,它返回调用并显示正确的响应(items=12),但适配器/RecycleView操作似乎已经执行,并且它们不使用延迟到达的解析数据。 主要活动。Java语言 改

  • 使用Android在中显示现有Firestore数据库中的数据的最佳方法是什么?