自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (10)
  • 收藏
  • 关注

原创 Retrofit源码详解

一.Retrifit代码详解1.使用方式Retrofit retrofit = new Retrofit.Builder(). baseUrl("https://www.wanandroid.com/"). addConverterFactory(GsonConverterFactory.create()). build(); //1动态代理生成代理接口代理实例 WanAndroidApi wanAndroidApi=retrofit.create(WanAndroidApi.class); //2

2021-04-14 12:15:18 196

原创 java集合详解

一.java集合详解1.java集合主要分为一下三类:(1)List(有序的列表)允许放重复的数据,重点介绍一下4种ArrayList: 数组实现,查询快,删除慢,线程不安全(速度快) LinkedList:双向链表实现,查询慢,删除快,线程不安全(速度快) Vector: 数组实现,查询快,删除慢,线程安全(速度慢) Stack: 栈结构,后进先出,继承Vector,数组实现,查询快,删除慢,线程安全(速度慢) (2)Set 存储不可重复的值的集合 HashSet: HashMap实现,唯一无

2021-02-24 14:45:06 112

原创 Android 线程池源码分析

一.线程池介绍普通的线程创建很简单类似下面的结构创建线程Thread thread = new Thread(){ @Override public void run() { super.run(); }};thread.start();为什么使用线程池呢?线程的创建和销毁有一定的开销,比如大量创建销毁线程消耗更大,当需要操作大量的异步任务的时候就需要少点的低频率的创建和销毁线程,这个时候就会使用线程池,方便管理和减少线程的频繁的创建和销毁。形如下面 f

2020-11-13 10:51:34 205

原创 AsyncTask源码分析

一.AsyncTask介绍AsyncTask asyncTask = new AsyncTask() { @Override protected Object doInBackground(Object[] objects) { return null; } };asyncTask.execute();通用的AsyncTask的具体使用,这个大家都很熟悉,我就不再赘述,我主要从源码层次分析一下AsyncTask怎么从异步线程转到主线程,怎么控制串行操

2020-11-10 09:53:16 89

原创 View的工作流程

view的工作流程主要分为三个1.measure过程,测量view的宽度高度2.layout过程,确定位置3.draw绘制页面的,View的整个绘制过程从ViewRootImpl的performTraversals()这个是整个View绘制的入口//伪代码只标注重要的部分private void performTraversals() { //这个是整个measure的入口 实际调用的是view的measure方法 performMeasure(childWidthMeasureS..

2020-08-12 10:33:45 180

原创 Android 滑动冲突解决的办法

1.外部拦截//外部拦截的话只需要复写onInterceptTouchEvent@Overridepublic boolean onInterceptTouchEvent(MotionEvent ev) { boolean intercepted = false; switch (ev.getAction()){ case MotionEvent.ACTION_DOWN: //这个时候返回false,事件才能交给子view 进行处理

2020-07-21 20:31:20 114

原创 Android 事件分发机制

1.事件分发机制事件分发简单而言就是点击事件怎么从Activity流转到ViewGroup,然后流转到View,最后这个点击事件有谁处理,怎么处理?时间分发有三个重要的方法,dispatchTouchEvent(分发事件的方法),onInterceptTouchEvent(拦截事件的方法),onTouchEvent(处理事件的方法)搞清楚Activity,ViewGroup和View的这三个方法,事件分发的机制也就了解了,咱们一个类一个类的进行讲解,首先深呼吸放松一下,然后进入代码的世界,大家慢慢的看。

2020-07-18 16:17:00 154

原创 Android Mvp模式

1.MVP 模式Model:复杂的数据处理和网络请求等业务逻辑的操作 View:主要负责页面的显示 Presenter:主持层,拥有Model和view的对象可以控制Model 进行数据处理反馈给view层,是一个中间枢纽的作用。 2.mvp架构图 从上面的图中看到Persenter层完全隔离View 和model层,view要进行操作的时候,调用presenter,presenter持有view的引用和model的引用,然后判断调用什么Model,进行具体的业务处理,model处理完成之后,把结.

2020-05-21 11:15:00 777

原创 Glide源码细节分析

1.Glide框架介绍Glide框架是个图片加载框架,平时用的最多,功能最强大的图片加载框架,他对比universalimageloader 增加了Acitivyt和Fragment的生命周期的管理,也增加了一级缓存,Glide源码比ImageLoader的源码复杂很多,完全针对接口编程,导致很多方法很难找见对应实现类的入口,网上介绍Glide的代码个人感觉结构不是很清晰,分析的也不是重点,我对整个Glide做了一个详细的梳理,整理了一下大致脉络,下面大家跟我一起一点点剖析Glide的代码,Glide加载

2020-05-19 19:55:24 261

原创 Android Handler机制源码细节实现分析

1.Handler机制介绍Handler机制主要用于线程通信,handler负责把message(消息)发送到MessageQueue(消息队列)里面,每个线程对应一个looper,不停的从消息队列取出消息,然后发送给handler ,交个它去处理消息。一个线程对应一个looper,一个looper对应一个消息队列。2.Handler线程通信代码Thread hanMeiMeiThread = new Thread("哈哈") { @Override public void run()

2020-05-19 16:54:12 250

原创 Android Mvc 模式

1.Mvc 介绍 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。 model:模型层主要是处理

2020-05-15 10:17:14 1128

原创 android创建多个Android AlarmManager遇到的坑

String action = "action"+id;IntentFilter intentFilter = new IntentFilter(action);Util.getAppliction().registerReceiver(receiver, intentFilter);alarmManager = (AlarmManager) Util.getAppliction().ge...

2019-07-27 15:07:50 715

原创 设计模式1单例设计模式

public class Sigleton {    //懒汉式单例模式  3种    private static Sigleton instance;    //第一种懒汉式设计模式    //只有需要的时候才会创建实例线程不安全的,不推荐使用    public static Sigleton getInstance1(){        if(instance==null){...

2018-11-24 17:16:40 94

android jni客户端端tcp socket

基于android studio 平台下的 用c++写的jni部分的 tcp协议下客户端的socket

2018-07-31

android jni服务器端tcp socket

基于android studio 平台下的 用c++写的jni部分的 tcp协议下的socket

2018-07-31

从上到下方向的抽屉效果

一个从上到下方向的抽屉效果,无需修改直接可引用

2014-05-26

日历控件的原型

一个简单的日历控件的原型,当你需要创造日历控件的时候,可以直接下载运用。

2014-05-21

小米的文件管理器

小米的文件管理器,代码质量很高结构很严谨,方便你的学习

2014-05-21

文件管理器

简单而又实用的文件管理器图片预览 图标异步加载

2014-05-21

pdf阅读器的实现

一个pdf阅读器的源码,简单而又实用,方便你的实现

2014-05-21

Android对View截图和Activity截图

Android对View截图和Activity截图,进行截图和如何对整个Activity截图

2014-05-21

android抽屉效果

简单的android抽屉效果的实现,用最简单的代码帮你实现抽屉效果。

2014-04-23

pdfToImage.rar

pdf格式转换成图片格式方便你快捷迅速的转换成图片,一定是不错的选择

2013-06-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除