为了能更直接的对应主题,下面代码不完整,所以请不要直接复制粘贴到IDE,重点代码加粗显示,代码中有注释.

public class MyActivity extends Activity implements OnScrollListener {// 参数/** 数据源 */private List data;/** 初始显示的页数 */private int pageNum = 1;/** 每一次显示多少个 */private static final int pageCount = 20;/** MyAdapter引用 */private MyAdapter adapter;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// 隐藏标题requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.listing);}/** * 自定义ListView的Adapter类 *  * @author Lion *  */class MyAdapter extends BaseAdapter {// 数据源private List data;public MyAdapter(List data) {super();this.data = data;}@Overridepublic int getCount() {// 返回该显示的数据个数// pageCount 一页显示多少个// pageNum 第几页return pageCount * pageNum;}@Overridepublic Object getItem(int position) {return data != null ? data.get(position) : null;}@Overridepublic long getItemId(int position) {// TODO Auto-generated method stubreturn position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {return convertView;}}/** * OnScrollListener接口实现方法 */@Overridepublic void onScrollStateChanged(AbsListView view, int scrollState) {// 当不滚动时if (scrollState == SCROLL_STATE_IDLE) {// 判断到底部滚动if (view.getLastVisiblePosition() == (view.getCount() - 1)) {if (data.size() - pageNum * pageCount <= pageCount) {// 这种情况就是末尾了,也就是集合(数据源)里面没有数据了Toast.makeText(getApplicationContext(), "已至末尾...",Toast.LENGTH_SHORT).show();} else {// 显示页数+1pageNum++;// 刷新ListViewadapter.notifyDataSetChanged();}}}}/** * OnScrollListener接口实现方法 */@Overridepublic void onScroll(AbsListView view, int firstVisibleItem,int visibleItemCount, int totalItemCount) {}}




转载地址:http://blog.csdn.net/jdsjlzx/article/details/8298140


更多相关文章

  1. 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
  2. android studio 查看sha1(Mac windows下的问题都可以通过此解决)
  3. android: 如何开启webview的LBS功能
  4. DatePickerDialog 自定义样式及使用全解
  5. android UI 的去标题栏和去状态栏(全屏)
  6. Android(安卓)新的锁屏接口的实现
  7. Android(安卓)Studio与eclipse常用快捷键对比
  8. Android(安卓)MVP 使用教程
  9. 初学Android,短信管理器之发送短信(六十五)

随机推荐

  1. 第一次发C语言文章居然在头条获得35的展
  2. linux进程间通信之一:无名管道
  3. 手把手教Linux驱动8-Linux IO模型
  4. 手把手教Linux驱动7-内核互斥锁
  5. linux驱动程序中的并发控制
  6. Ubuntu18.04搭建ssh服务器
  7. IIC驱动移植在linux3.14.78上的实现和在l
  8. 一文读懂数据治理和数据资产管理的关系
  9. C语言操作时间函数time.ctime,实现定时执
  10. linux设备驱动程序中的阻塞机制