Android基于ListView实现类似QQ空间的滚动翻页与滚动加载效果
本文实例讲述了Android基于ListView实现类似QQ空间的滚动翻页与滚动加载效果。分享给大家供大家参考,具体如下:
1.滚动加载
listView.setOnScrollListener(newOnScrollListener(){
//添加滚动条滚到最底部,加载余下的元素
@Override
publicvoidonScrollStateChanged(AbsListViewview,intscrollState){
if(scrollState==OnScrollListener.SCROLL_STATE_IDLE){
loadRemnantListItem();
}
}
@Override
publicvoidonScroll(AbsListViewview,intfirstVisibleItem,intvisibleItemCount,inttotalItemCount){}
});
listView.setOnItemSelectedListener(newOnItemSelectedListener(){
//按键选择List中的item,焦点落在最下面的view上加载余下的item
@Override
publicvoidonItemSelected(AdapterView<?>parent,Viewview,intposition,longid){
if(footerView==view){
loadRemnantListItem();
listView.setSelection(position-1);
}
}
@Override
publicvoidonNothingSelected(AdapterView<?>parent){}
});
privatevoidloadRemnantListItem(){//滚到加载余下的数据
//动态的改变listAdapter.getCount()的返回值
//使用Handler调用listAdapter.notifyDataSetChanged();更新数据
}
2.滚动翻页
listView监听器代码相同
privatevoidloadRemnantListItem(){//滚到加载余下的数据
//重新listView.setAdapter(newsAdapter);
//使用Handler调用listAdapter.notifyDataSetChanged();更新数据
}
注:在listView最下面可以试用listView.addFooterView(footerView,null,true);来显示“加载中...”等的字样来美化用户体验,在loadRemnantListItem()方法中动态控制“加载中...”的显示和不显示
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。