很大的数据使我的应用程序在使用ScrollView时非常慢

时间:2019-10-16 05:20:46

标签: android scrollview android-nestedscrollview

我正在编写一个整个页面均可滚动的android应用程序。 因此,我尝试使用NestedScrollView,但是由于数据非常大(例如,超过1000条记录,最多可以有10000条记录),因此创建回收视图的视图太慢了,这会使我的应用程序崩溃。

所以我正在使用下面的代码来解决上述问题。

recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
            @Override
            public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
                super.onScrolled(recyclerView, dx, dy);

                if (!recyclerView.canScrollVertically(1))
                    onScrolledToBottom();
            }
        });

它可以帮助减少时间,但问题是屏幕无法滚动到整个页面。

该如何处理?

  

ID:<输入框>

     
     

item1

     

item2

     

item3

     

item4

     

item5

     

item6

     

...

     

item1000

1 个答案:

答案 0 :(得分:1)

分页为此专门构建。 您可以拥有一个可以为您提供数据的存储库。

class YourRepository{
    /**
     * Offset would indicate the starting index of data that you need
     * Count indicates the amount of data you need
     **/
    List<Data> getData(int count, int offset){}
}

有了这个API,您可以非常有效地使用Jetpack Paging库。 https://developer.android.com/topic/libraries/architecture/paging