摘要: 个人Android高级进阶之路,目前按照这个目录执行,执行完毕再做扩展!!!!! 一.View的绘制 1)setContentView()的源码分析 2)SnackBar的源码分析 3)利用decorView机制实现底部弹出框 4)换肤框架(一)之Support v7库解析 5)小红书欢迎页的视差效 阅读全文
posted @ 2019-04-30 15:00 鲨鱼也疯狂 阅读(1475) 评论(1) 推荐(0) 编辑
摘要: 我们知道新打开一个应用的时候,会出现短暂的白屏或者黑屏,严重影响到我们的用户体验,其实这个过程是launcher启动新进程,进程中启动activity时,会先绑定window,然后使用默认的windowBackground导致的。 下面有三种解决办法: 1.主题切换法: 设置背景为透明: 或者直接修 阅读全文
posted @ 2019-01-27 15:15 鲨鱼也疯狂 阅读(562) 评论(0) 推荐(0) 编辑
摘要: dagger2是目前android端比较火的一款依赖注入框架,先来看下基本的用法吧: 首先提供module,类似于工厂: 然后是component组件,用来连接module与需求方: 在activity中使用: 使用是非常简单的,下面来看一下dagger2是如何做到依赖注入的吧: 首先会调到 Dag 阅读全文
posted @ 2019-01-26 18:36 鲨鱼也疯狂 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 因为fragment是依赖于activity的,所以activity的创建相关都是先于fragment的,fragment的销毁相关都是先于activity的。 阅读全文
posted @ 2019-01-18 10:02 鲨鱼也疯狂 阅读(171) 评论(0) 推荐(0) 编辑
摘要: Android中的性能优化主要包括: 1.布局优化 2.绘制优化 3.内存优化 4.响应速度优化 5.listview优化 6.bitmap优化 1.先讲一下布局优化:尽量减少布局层级,relativeLayout性能比LinearLayout性能差一些,当层级比较多的时候尽量使用RelativeL 阅读全文
posted @ 2019-01-17 10:17 鲨鱼也疯狂 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 前言:Android手机分配给给个应用的内存空间都是有限的,当图片像素>屏幕像素时,会造成内存浪费,严重时更会造成oom,当图片像素<屏幕像素时,又会导致展示出来的图片失真,因此一个好的图片框架应该解决内存分配的问题。 一般做法: 1.先将BitmapFactory.option.inJustDec 阅读全文
posted @ 2019-01-16 14:01 鲨鱼也疯狂 阅读(445) 评论(0) 推荐(0) 编辑
摘要: 定义:将一个复杂的构建与他的表示分离,使得同样的构建过程可以创建不同的表示. 将computer的构建都放在builder中去构建。 Test: 阅读全文
posted @ 2019-01-15 20:09 鲨鱼也疯狂 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 定义:责任链模式是一条用户定义的链条,链条上每个节点都有自己的责任,当有任务进入时,从第一个节点开始处理,如果处理成功,则终止往下传递任务,否则将会把任务传递给下一个节点,依次类推,直至最后一个节点。 一起来看一个小例子: BaseCase: CaseChain: OneCase: TwoCase: 阅读全文
posted @ 2019-01-15 19:56 鲨鱼也疯狂 阅读(442) 评论(0) 推荐(0) 编辑
摘要: 使用单例模式可以减少内存消耗,一般写法如下: 第一个 instance == null 主要是为了解决 有instance的时候直接renturn 第二个 synchronized (Application.class) 主要是了解决线程同步的问题 第三个 instance == null 有可能第 阅读全文
posted @ 2019-01-15 17:02 鲨鱼也疯狂 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 前言:新启动一个activity分为两种情况,第一种是在Launcher的桌面点击icon图标启动一个新的应用,第二种是在应用启动的情况下从OneActivity->TwoActivity 其实两种情况殊途同归,最后都是调用的相同方法。下面我们主要总结一下第一种情况。 引用 https://blog 阅读全文
posted @ 2019-01-15 15:22 鲨鱼也疯狂 阅读(413) 评论(0) 推荐(0) 编辑