AQuery应该延迟并滚动监听器

时间:2012-11-20 20:44:39

标签: android listview android-query

我有一个ListView,正如问题所示,我正在加载延迟的图像。问题是这个方法覆盖了我的自定义onScrollListener。我尝试使用:

aq.id(listview).scrolled(new customScrollListener());
aq.id(listview).adapter(myAdapter);

这两行是在调用活动类中,我在列表中加载了所有数据后执行此操作。即使在此之后,scrollListener似乎也不起作用。我哪里错了?有什么想法吗?

UPDATE - CustomScrollListener:

private class CustomScrollListener implements OnScrollListener {

    private Context context;
    private int visibleThreshold = 0;
    private int currentPage = 0;
    private int previousTotal = 0;
private boolean loading = true;

CustomScrollListener(Context context) {
    this.context = context;
}
CustomScrollListener(int visibleThreshold) {
    this.visibleThreshold = visibleThreshold;
}

@Override
public void onScroll(AbsListView view, int firstVisibleItem,
        int visibleItemCount, int totalItemCount) {     

    if (loading) {
        if (totalItemCount > previousTotal) {
            loading = false;
            previousTotal = totalItemCount;
            currentPage++;
        }
    }
    if (!loading && (totalItemCount - visibleItemCount) <= (firstVisibleItem + visibleThreshold) && totalItemCount>10) {
     // do something          
    }
}

@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}       
}

1 个答案:

答案 0 :(得分:0)

你的问题是AndroidQuery souldDelay会覆盖你自己的监听器。看看文档:

  

shouldDelay()方法使用setOnScrollListener()方法和   将覆盖任何以前非aquery指定的滚动侦听器。如果一个   滚动侦听器是必需的,使用aquery方法   滚动(OnScrollListener侦听器)来注册您的侦听器。

来源:aquery image loading