如何在android中显示每个recyclerview的加载进度条?

如何在android中显示每个recyclerview的加载进度条?,android,android-recyclerview,Android,Android Recyclerview,我有一个屏幕,其中有两个recyclerviews(一个水平,另一个垂直),现在当用户来到这个屏幕时,我正在执行一个rest调用以向两个recycler视图填充数据。一个rest调用水平recyclerview,另一个rest调用第二个recyclerview 我的问题是如何为水平回收器视图显示旋转循环进度,为垂直回收器视图显示旋转循环进度。因为两个rest调用都是独立的,所以我不想为整个活动只显示一个进度条 我没有尝试过的任何代码。在您定义recyclerview的布局文件中,在每个recyc

我有一个屏幕,其中有两个
recyclerviews
(一个水平,另一个垂直),现在当用户来到这个屏幕时,我正在执行一个rest调用以向两个recycler视图填充数据。一个rest调用水平recyclerview,另一个rest调用第二个recyclerview

我的问题是如何为水平回收器视图显示旋转循环进度,为垂直回收器视图显示旋转循环进度。因为两个rest调用都是独立的,所以我不想为整个活动只显示一个进度条


我没有尝试过的任何代码。

在您定义recyclerview的布局文件中,在每个recyclerview的顶部放置一个进度条,加载数据时,进度条将出现,加载完成后,将进度条的可视性设置为查看。当您点击rest api时,不可见,在进度条上使用
View.VISIBLE
表示数据加载,在将数据填充到回收服务EW2后,在进度条上使用
View.GONE
将其隐藏。

详细布局取决于您的安排

layout/my_layout.xml

<ProgressBar
    android:id="@+id/pb_vertical"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    />
<android.support.v7.widget.RecyclerView
    android:visibility="gone"
    android:id="@+id/rv_vertical"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:scrollbars="vertical" 
    />

<ProgressBar
    android:id="@+id/pb_horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    />
<android.support.v7.widget.RecyclerView
    android:visibility="gone"
    android:id="@+id/rv_horizontal"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:scrollbars="horizontal" 
    />

您希望在每个RecyclerViews中显示什么类型的数据因此,只需在webservice调用开始时启动progressbar,并在调用结束时停止它这里有什么问题?我不希望每个recyclerview项都显示progressbar,我希望整个recyclerview都显示一个进度,直到我将数据填入其中好主意,但是,当我在嵌套的scrollview中时,如何使循环进度居中(而不是将重心设置为水平中心)。您可以先将recyclerview和progressbar嵌套在
RelativeLayout
中,然后将其放在scrollview中。因为您有一个复杂的要求:)
private void showVerticalContent() {
    // when vertical content is fetched
    pb_vertical.setVisibility(View.GONE);
    rv_vertical.setVisibility(View.VISIBLE);
}

private void showHorizontalContent() {
    // when horizontal content is fetched
    pb_horizontal.setVisibility(View.GONE);
    rv_horizontal.setVisibility(View.VISIBLE);
}