源码分析
文章平均质量分 85
Jaivne_Kuang
活到老学到老
展开
-
深入解析Android Design包——NestedScroll
Android开发中滑动冲突的问题一直是编写界面时的一个老大难问题,比如ScrollView+ListView的嵌套基本是没办法实现滑动的自然切换的可能导致UI绞尽脑汁想出来的创意开发人员没办法实现。为此,Google推出了一个support包——Android Design.原创 2017-06-23 21:57:00 · 817 阅读 · 0 评论 -
深入解析Android Design包——Behavior
上一篇深入解析AndroidDesign包——NestedScroll 已经说过了,在AndroidDesign包中主要有两个核心概念:一是NestedScroll,另一个就是Behavior。 相比于NestedScroll这个概念来说,Behavior分析起来会难很多,因为它几乎遍布了AndroidDesign包的每一个控件,种类繁多;另外Behavior提供了二十多个空方法给使用者来重写,主原创 2017-06-29 14:15:23 · 2393 阅读 · 2 评论 -
ViewPager源码分析
1.问题由于Android Framework源码很庞大,所以读源码必须带着问题来读!没有问题,创造问题再来读!否则很容易迷失在无数的方法与属性之中,最后无功而返。 那么,关于ViewPager有什么问题呢? 1. setOffsreenPageLimit()方法是如何实现页面缓存的? 2. 在布局文件中,ViewPager布局内部能否添加其他View? 3. 为什么ViewPager初始化原创 2017-02-24 17:53:26 · 4360 阅读 · 0 评论 -
ViewGroup是如何加载布局中的view?
LayoutInflater如何加载布局?上面链接中的内容是此篇文章的基础,如果对LayoutInflater原理不熟悉可以去参考一下。1.问题由来本来在看CoordinatorLayout的源码,然后发现它内部定义了一个LayoutParams。那么问题就来了,在布局文件中的childView是没有置顶LayoutParams的,那么只有在childView创建的时候,由CoordinatorLa原创 2016-12-14 16:40:43 · 3071 阅读 · 0 评论 -
从Observer模式的角度分析AdapterView源码
对于程序员来说,不过你属于哪个品种(c++,java,js,c#...)这些特定的语言都是在不断更迭的,熟悉的SDK也总有一天会被淘汰掉,所以在我看来,真正能属于自己的就是那些融入你的思维中的东西,例如设计模式。这也是我下决心研究设计模式的最大动力。在此先推荐一本好书《设计模式解析》 by - Alan Shalloway, James R. Trott本人也是尝试过无数次学习设计模式,然原创 2016-09-25 21:37:15 · 661 阅读 · 0 评论 -
细读百度地图点聚合源码(下)---Renderer类解析
上一篇文章分析了ClusterMananger的整体结构和核心算法 细读百度地图点聚合源码(上),此文是接着上一篇来的。在本文中,我们将学习如何在UI线程中做大量的操作,并且不会造成界面卡顿。原创 2016-05-13 22:09:08 · 12867 阅读 · 24 评论 -
细读百度地图点聚合源码(上)
之前在项目中需要用到百度地图的点聚合,看了百度提供的demo之后,稍微读了一些源码就能达到需求了,所以并未深入解读源码。最近有空就把百度实现点聚合的源码从里到外仔细研究了一遍受益良多,在此分享一下。为了方便研究我把百度demo中点聚合相关的类抽出来,新建了个工程,有需要可以下载来研究。整个源码分析过程我分为三个部分:1.整体结构分析2.核心算法分析3.实现点聚合本篇为上篇,主要分析1,2部分。之后还会有个下篇,着重分析具体如何实现marker点聚合以及一些动画处理,这一部分百度处理的非常精妙。原创 2016-04-20 23:27:10 · 22866 阅读 · 15 评论