Lance老师UI系列教程第二课->腾讯微博(下拉刷新+点击更多)listview的实现 (android)

本教程介绍如何在Android中实现腾讯微博风格的下拉刷新Listview,包括在MotionEvent中切换头部视图状态和处理底部点击加载更多。通过添加一个headview并根据手势状态改变其大小,实现出良好的用户体验。示例代码提供了完整的实现,包括对PULL_REFRESH和RELEASE_REFRESH状态的处理,以及设置setSelection(0)确保头视图完整显示。同时,还提供了加载数据后更新adapter和刷新listview状态的方法。
摘要由CSDN通过智能技术生成

                                                   
UI系列教程第二课:腾讯微博下拉刷新listview

 

今天蓝老师要讲的是关于腾讯微博下拉刷新listview的实现。如上图所示,这是一个用户体验非常好的操作方式,在腾讯微博,新浪微博等等应用中相当常见,相信很多童鞋以后做应用也都会碰到。关于其实现原理,其实网上已有很多demo,鼻祖要数GitHubJ兄了,J兄的做法主要是重写 OnScroll,根据各种状态修改headviewsize;还有种则是在OnTouchEvent里做文章,同样是对headview设置padding改变其大小;可能对于多数人后者比较容易理解,蓝老师就第二种实现方式展开本节课程,示例demo是蓝老师重构代码后同时加以扩展添加底部点击获取更多的操作方式,完成腾讯微博的listview实现效果,废话不多说,先上效果图:


 

大致跟童鞋们说下思路,实现原理是给listview加上一个headview,然后headview有四种状态

	public interface IListViewState
	{
		int LVS_NORMAL = 0;					//  普通状态
		int LVS_PULL_REFRESH = 1;			//  下拉刷新状态
		int LVS_RELEASE_REFRESH = 2;		//  松开刷新状态
		int LVS_LOADING = 3;				//  加载状态
	}
	

 

所以关键在于MotionEvent.ACTION_MOVE时根据手势情况切换各种headview状态

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值