【进阶android】ListView源码分析——总述

         纵观android所提供的原生控件,ListView无疑是最受瞩目的控件之一;而如今的android项目,能不涉及到ListView的几乎没有;加之前段时间的几次面试,对ListView的问题不仅仅停留到如何使用,如何优化,更是涉及到其原理;所以,笔者便有了通过其源码进行学习的冲动;然而,ListView的源码接近4000行(android4.4.2)其父类AbsListVIew的源码更是有7200多行之多,所以要将其完全吃透,并非一日之功。

        最开始分析ListView的目的是在于,ListView是一个ViewGroup,所以通过其源码对onMeasure、onlayout及onDraw三大方法有一定的认知;此外,ListView的视图重用机制、适配者模式及观察者模式都深深的吸引着笔者;最后也想从源码级来分析ListView的相关优化。

       而在大致浏览源码(android4.4.2)一遍后,笔者打算从一下5个方面来学习ListView源码:

       1、适配器及观察者;每一个ListVIew都从setAdapter方法开始它的经典,【进阶android】ListView源码分析——适配器及观察者模式

       2、onMeasure、onlayout及onDraw三大方法;看看一个ViewGroup的实例,【进阶android】ListView源码分析——布局三大方法

       3、ListView的填充方式;此点算是第二点的一个补充,我们将以ListVIew.layoutChildren方法为入口,【进阶android】ListView源码分析——子视图的七种填充方式

       4、ListView的重用视图,以ListView.makeAndAddView方法为入口,【进阶android】ListView源码分析——ListView的重用视图机制

       5、ListView的滑动机制,以AbsLIstView.onTouchEvent方法为入口,【进阶android】ListView源码分析——ListView的滚动机制

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值