hac*_*ker 14 android-gridview android-scroll
我有一个自定义的gridview,我正在检查循环方法以查找列表的结尾.如果滚动到达列表的末尾,它将再次向列表中添加一些元素.
gridview.setOnScrollListener(new OnScrollListener() {
@Override
public void onScrollStateChanged(AbsListView arg0, int arg1) {
}
@Override
public void onScroll(AbsListView arg0, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
// TODO Auto-generated method stub
int lastInScreen = firstVisibleItem + visibleItemCount;
//is the bottom item visible & not loading more already ? Load more !
if((lastInScreen == totalItemCount) && (!loadingMore))
{
new LoadDataTask().execute();
}
}
});
Run Code Online (Sandbox Code Playgroud)
这是我的异步任务类..
private class LoadDataTask extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... params) {
if (isCancelled()) {
return null;
}
loadingMore = true;
for (int i = 0; i < mNames.length; i++)
mListItems.add(mNames[i]);
return null;
}
@Override
protected void onPostExecute(Void result) {
mListItems.add("Added after load more");
loadingMore=false;
adapter.notifyDataSetChanged();
super.onPostExecute(result);
}
@Override
protected void onCancelled() {
}
}
Run Code Online (Sandbox Code Playgroud)
现在的问题是onScroll方法继续调用.即使用户不滚动,它也不会停止.谁能有解决方案?
请检查此问题的答案:当我设置 listView.onScrollListener(this) 时 onScroll 被调用,但没有任何 touch。
对于 来说也是如此GridView,因为它AbsListView和 一样具有超类ListView。
| 归档时间: |
|
| 查看次数: |
3381 次 |
| 最近记录: |