第一个androidAPP项目总结—ListView的上拉和下拉
1.下拉刷新
需继承implements SwipeRefreshLayout.OnRefreshListener
@Override
public void onRefresh() {
new WeakHandler().postDelayed(new Runnable() {
@Override
public void run() {
if (getArguments() != null) {
mSwipeLayout.setRefreshing(true);
//请求数据
getDateNet(0);
}
}
}, 300);
} 请求数据成功之后调用以下方法
private void refresh(int page, KaQuanMod[] m) {
//判断是为空
List<KaQuanMod> mMods = null;
if (m != null)
mMods = Arrays.asList(m);
else
mMods = new ArrayList<KaQuanMod>();
//page = 0 首次 刷新 ,>0 加载更多
if (page == 0) {
//首次加载不需要判断,因为adapter需要判断是否有数据,用于显示没有数据的样式
mylist.clear();
mylist.addAll(mMods);
mListAdapter = new KaQuanListViewAdapter(mActivity, mylist,useType,couponType);
listview.setAdapter(mListAdapter);
} else if (page > 0) {
if (ListUtils.isEmpty(mMods)) {
showToast(getString(R.string.no_more_data_find));
isHasMore = false;
return;
}
mylist.addAll(mMods);
mListAdapter.notifyDataSetChanged();
}
}
2.上拉加载更多
lv为ListView
lv.setOnScrollListener(new AbsListView.OnScrollListener() {
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
lastItem = firstVisibleItem + visibleItemCount;
}
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
if (lastItem == ListUtils.getSize(mylist) && scrollState == AbsListView.OnScrollListener.SCROLL_STATE_IDLE) {
//滑动到底部,加载数据
//请求加载下一页数据,加载成功后调上面的refresh方法
getDingDan(1, mylist.get(ListUtils.getSize(mylist) - 1).getCreateDate(), 1);
}
}
});
第一个androidAPP项目总结—ListView的上拉和下拉的更多相关文章
- git操作+一个本地项目推到github上+注意
git init 创建新文件夹,打开,然后执行以创建新的 git 仓库. git config --global user.name "xxx" git config --glob ...
- Flutter学习笔记(25)--ListView实现上拉刷新下拉加载
如需转载,请注明出处:Flutter学习笔记(25)--ListView实现上拉刷新下拉加载 前面我们有写过ListView的使用:Flutter学习笔记(12)--列表组件,当列表的数据非常多时,需 ...
- Android之 RecyclerView,CardView 详解和相对应的上拉刷新下拉加载
随着 Google 推出了全新的设计语言 Material Design,还迎来了新的 Android 支持库 v7,其中就包含了 Material Design 设计语言中关于 Card 卡片概念的 ...
- 微信小程序 上拉刷新/下拉加载
小程序项目中上拉刷新下拉加载是比较常见的需求,官方文档也提供了相当友好的API,但是因为API隐藏的比较深,文档描述也比较模糊所以也折腾了一番(官方文档),在此记录一下使用方式 onPullDownR ...
- Arduino 极速入门系列 - 光控灯(2) - 关于开关,上拉、下拉电阻那些事
接上篇,这次继续讲解光控灯的另外两个组成部分 - 开关和光敏电阻,光控灯里面将会有自锁开关按钮和光敏电阻.这此主要给新玩电子的朋友解释一下开关按钮的做法. 开关按钮的引脚电平读取问题 - 新手专用 我 ...
- ios 上拉载入下拉刷新Dome
为练手写了一个小的上拉载入很多其它下拉刷新的小的Dome . 没有太多的技术含量,仅仅是作为新手的启示用.是上一篇下拉载入的扩展.先看一下那个再看这个就easy非常多. Dome下载:http://d ...
- #Java Web累积#关于MUI的上滑和下拉加载
其实按照MUI的文档去写,也没什么问题: JSP中: <%@ page contentType="text/html;charset=UTF-8" language=&quo ...
- 使用iScroll实现上拉或者下拉刷新
上拉或者下拉刷新的需求在移动端是非常常见的需求,大部分情况下,实现这个效果都使用网上现有的解决方案,例如有人使用swiper这个插件, 也有人使用iScroll这个滚动插件.本文的示例是利用iscro ...
- html5+css3实现上拉和下拉刷新
<!DOCTYPE html><html><head> <meta http-equiv="Content-Type" content=& ...
随机推荐
- 深入了解使用egret.WebSocket
概念 本教程不讲解TCP/IP协议,Socket属于哪层,消息包体怎么设计等,主讲 egret.WebSocket 使用示例 与 protobuf 使用示例. 在使用egret.WebSocket之前 ...
- centos7 服务器安装nginx,mysql,php
一.概述 项目的需要,今天在虚拟机上基于Centos安装配置了服务器运行环境,web服务用 nginx,数据库存储在mysql,动态脚本语言是php. 二.步骤 首页保证Centos7已经安装完毕,正 ...
- id 自增------删除数据后恢复到删除前自增id
删除数据后,执行下面语句: ALTER TBALE TableName AUTO_INCREMENT=1 mysql删除比较 一.DROP drop table tablename 绝招:删除内容和 ...
- Linux命令——创建删除文件
创建文件夹 mkdir filename 进入目录文件 cd filename 返回上一级目录 cd ..返回多级目录 cd ../../.. (../表示一级) 创建文件 touch filen ...
- codevs 4310 复制书稿
4310 复制书稿 时间限制: 1 s 空间限制: 4000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 现在要把m本有顺序的书分给k个人 ...
- SANS top 20
What Are the Controls?The detailed Consensus Audit Guidelines are posted at http://www.sans.org/cag/ ...
- pojShredding Company
http://poj.org/problem?id=1416 #include<cstdio> #include<cstring> #define MAXN 100 using ...
- VMware 11安装Mac OS X 10.10
http://jingyan.baidu.com/article/ff411625b9011212e48237b4.html
- 收藏maven错误
错误原因: 编译下载最新的maven源代码,但是出现错误.错误如下: [WARNING] Some problems were encountered while building the effec ...
- 【HDOJ】1313 Round and Round We Go
大数乘,果断java A了. import java.util.Scanner; import java.lang.StringBuilder; import java.math.BigInteger ...