Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何知道视图何时已滚动到视图中_Android - Fatal编程技术网

Android 如何知道视图何时已滚动到视图中

Android 如何知道视图何时已滚动到视图中,android,Android,我们目前正在开发一个应用程序,可以在寄存器和行中显示大型数据集。我们使用一个TableLayout作为基本视图,然后为每一行中带有LinearLayout的每个项目添加表行 我注意到,一旦记录量超过某个点1000多条记录,设备的速度就会大大降低。我敢肯定这是一个简单的内存问题也可以渲染吗?并且设计了一个可以提高速度的计划 我们已经在很多silverlight项目上实现了连续分页,我认为这是Android中最好的方法 我现在唯一的问题是识别一个特定的视图,比如说第100行已经滚动到视图中,这样我就

我们目前正在开发一个应用程序,可以在寄存器和行中显示大型数据集。我们使用一个TableLayout作为基本视图,然后为每一行中带有LinearLayout的每个项目添加表行

我注意到,一旦记录量超过某个点1000多条记录,设备的速度就会大大降低。我敢肯定这是一个简单的内存问题也可以渲染吗?并且设计了一个可以提高速度的计划

我们已经在很多silverlight项目上实现了连续分页,我认为这是Android中最好的方法

我现在唯一的问题是识别一个特定的视图,比如说第100行已经滚动到视图中,这样我就可以开始渲染接下来的几行了

有人知道如何做到这一点,或者知道一种更好的方法来实现/处理大型数据集吗


关于

使用CustomListView而不是使用表布局,CustomListView具有重用行的功能

您可以在此处找到如何使用自定义列表视图

[Custom ListView][1]

您只需要将onScrollListener添加到视图中。 最好使用ListView来显示数据

从下面的代码中,您可以获得当前视图的索引

ListView.OnScrollListener是您需要实现并提供主体的接口 以下是两种方法

listView.SetOnScrollListener新建listView.OnScrollListener{

CrollLabsListView视图上的公共无效,int firstVisibleItem,int visibleItemCount, 整数totalItemCount{ }

    public void onScrollStateChanged(AbsListView view, int scrollState) {
        switch (scrollState) {
        case OnScrollListener.SCROLL_STATE_IDLE:
            mBusy = false;

            int first = view.getFirstVisiblePosition();
            int count = view.getChildCount();


            break;
        case OnScrollListener.SCROLL_STATE_TOUCH_SCROLL:

            break;
        case OnScrollListener.SCROLL_STATE_FLING:



            break;

        }
    }
})


尝试打印first和count变量的值,它将解决您的问题。希望:

我认为此视频对您非常有益


这篇文章讨论了你正面临的确切问题以及如何解决它

谢谢你,伙计!你能提供你提到的链接吗为使其快速运行,请尝试一些用于SlowAdapter和EfficientAdapter的代码