scrollview 实现滑动到底部再滑动加载数据的功能
思路:在滑动基础上添加scrollview到底检测事件
1.首先检测是否滑动
- // 滑动加载
- scrollView.setOnTouchListener(new OnTouchListener() {
- @Override
- public boolean onTouch(View v, MotionEvent event) {
- // TODO Auto-generated method stub
- switch (event.getAction()) {
- case MotionEvent.ACTION_DOWN :
- break;
- case MotionEvent.ACTION_MOVE :
- //检查滑动事件
- Log.d(TAG,"滑到底部");
- break;
- default :
- break;
- }
- }
- });
2.对scrollview添加到底检测监听事件
但是scrollview 不能像listview那样添加onscrolllistener监听,所以需要自己检测
- if (view.getMeasuredHeight() <= v.getScrollY() + v.getHeight()) {
- //到底部
- Log.d(TAG,"滑到底部");
- }
3.组合代码
- // 滑动加载
- scrollView.setOnTouchListener(new OnTouchListener() {
- @Override
- public boolean onTouch(View v, MotionEvent event) {
- // TODO Auto-generated method stub
- switch (event.getAction()) {
- case MotionEvent.ACTION_DOWN :
- break;
- case MotionEvent.ACTION_MOVE :
- View view = ((ScrollView) v).getChildAt(0);
- if (view.getMeasuredHeight() <= v.getScrollY() + v.getHeight()) {
- //加载数据代码
- }
- break;
- default :
- break;
- }
- }
- });
4.测试的时候 发现这样会导致滑动多次触发,所以优化代码如下
- private int index = 0;
- // 滑动加载
- scrollView.setOnTouchListener(new OnTouchListener() {
- @Override
- public boolean onTouch(View v, MotionEvent event) {
- // TODO Auto-generated method stub
- switch (event.getAction()) {
- case MotionEvent.ACTION_DOWN :
- break;
- case MotionEvent.ACTION_MOVE :
- index++;
- break;
- default :
- break;
- }
- if (event.getAction() == MotionEvent.ACTION_UP && index > 0) {
- index = 0;
- View view = ((ScrollView) v).getChildAt(0);
- if (view.getMeasuredHeight() <= v.getScrollY() + v.getHeight()) {
- //加载数据代码
- }
- }
- return false;
- }
- });
安卓开发论坛 http://www.eoeandroid.com/
scrollview 实现滑动到底部再滑动加载数据的功能相关推荐
- java 滚动加载数据_[Java教程]浏览器滚动条快到底部时自动加载数据
[Java教程]浏览器滚动条快到底部时自动加载数据 0 2015-11-30 15:00:44 1 2 3 4 5 6 ");24 main.append(" hello worl ...
- [转]ListView滚动到底部自动加载数据
转自:http://blog.csdn.net/shineflowers/article/details/41744241 在Android中有很多时候会选择用ListView加载数据,有的是分批加载 ...
- ios 平滑移动view_iOS 关于列表上拉(平滑加载数据)自动加载数据的问题
项目需求 我的的列表需要改变,原来的分页加载采用的是MJRefresh框架进行加载更多数据,这需要有一个上拉动作才能触发,而我的产品的意思是当快要滑动到底部时自动加载下一页数据.我自己看了一下,发现很 ...
- Android GridView横向滚动,分页加载数据
转载请注明出处,谢谢http://blog.csdn.net/harryweasley/article/details/51007348 始终觉得讲ui效果要先放上效果图,要不让其他人好不容易看完了, ...
- 揭秘之从RecyclerView滑动监听到Gilde平滑加载图片
版权声明:本文为博主原创文章,未经博主允许不得转载. 本文应该是RecyclerView的第三篇,今天来讲讲如何让RecyclerView优先加载可见item,如何在RecyclerView滑动中停止 ...
- 滑动加载怎么做 php,vue之UI框架如何实现滑动加载数据
在我们移动端还有一个很常用的组件,那就是滑动加载更多组件.平常我们看到的很多插件实现相当复杂就觉得这个组件很难,其实不是的!!这个组件其实可以很简单的就实现出来,而且体验也能非常的棒(当然我们没有实现 ...
- Android Listview滑动时不加载数据,停下来时加载数据,让App更优
转载:http://blog.csdn.net/yy1300326388/article/details/45153813 数据源配置(Adapter) package com.zhengsongla ...
- 微信小程序开发之scroll-view上拉加载数据实现
微信小程序开发之scroll-view上拉加载数据实现 一.开发思路 1.使用小程序的scroll-view组件中提供了一个bindscrolltolower属性监听组件的滑动到了底部 https:/ ...
- html 下拉滚动加载,原生js滚动到底部加载数据和下拉刷新 Scrollload
初衷 如今移动端站点越来越多,滚动到底部加载数据和下拉刷新的需求非常的常见,即使现在很多pc站点也会有这样的需求,比如百度首页就有.虽然简单的完成这么一个功能非常方便,但是滚动往往会成为性能的瓶颈,处 ...
最新文章
- 用Python爬取42年数据,告诉你高考有多难!
- SpringBoot自定义请求参数转换器
- Python Django 多对多表设计
- 线程故事:关于健壮的线程池
- notebook python 内嵌 数据库_python数据分析:在jupyter notebook上使用pythonSQL做数据分析...
- __stdcall __cdecl 引起的程序崩溃
- python基础知识——模块
- Win10更新后BUG——任务栏点不动、卡死、加载不出来解决办法
- 智慧党建管理系统开发,组织部干部人事管理任免平台建设
- 7个简单步骤解释区块链挖掘和交易如何工作
- leetcode 初级算法 数组
- 空间数据计算引擎GeoSpark调研
- Nakagami分布
- Python文本分析-常用中文停用词表(Chinese Stop Words)
- systemd介绍六:Journalctl查看并操作sytemd日志
- WARN [AdminClient clientId=adminclient-1] Connection to node -1 (localhost/127.0.0.1:9092) could not
- IT男着装bug修复,下一个业界男神就是你!
- 【Linux 系统运维基础】经典案例
- Android 集成Facebook分享功能
- 阅读感悟《给中年程序员的温暖人心的巴比奇的故事》
热门文章
- 【C 语言】字符串拷贝 ( 优化指针操作 )
- 【Android 逆向】ELF 文件格式 ( ELF 文件当前版本号 | 操作系统 ABI 信息 | ABI 版本 | 文件头校验 | 文件头长度信息 )
- 【JavaEE WEB 开发】Tomcat 详解 Servlet 入门
- [Spring cloud 一步步实现广告系统] 14. 全量索引代码实现
- 如何改变数据库存储引擎
- Linux 播放网易云音乐(树莓派)
- castle windsor学习-----XML Inline Parameters 内联参数
- LU 分解 (LU Decomposition)
- 2、RabbitMQ-simplest thing(简单队列)
- layUI 实现自定义弹窗