自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (7)
  • 收藏
  • 关注

转载 荐一份 Android 代码规范建议文档

之前推送过:Android 代码规范大全,可以一起学习。开源几年了,被很多人夸过,你的代码写得比较规范,甚至有人质疑自己代码的写法,但是迟迟没有出一个代码规范,说来惭愧,只是因为我早几年写的代码还不够规范,不敢出来误导大家,而代码规范是后续才慢慢养成的,在这个过程中,我不仅参考了大公司出的代码规范文档,也研究了很多关于谷歌源码的编码规范,同时我也在无时不刻在思考,如何能写出让别人更好理解的代码,自打入行以来,我就在一直在这个问题上面探索。为什么要做成一个开源项目?因为项目会长期更新,大家如果对里面一些规

2021-03-02 11:59:19 285

原创 如何用RXjava 替换EventBus 通信方案

经过这边文章,可能很多人之前用到intent传值 ,以及Eventbus传值,针对Eventbus传值呢 可能注解多,然后有去无回 类似单向传递值,接下来,我们来了解下 RXjava :大体实现如下public class RxBus { private static volatile RxBus rxBus; private final PublishSubject<Object> mRxtBus =PublishSubject.create();

2020-06-18 11:38:39 380

原创 Android关于获取是否有外置sd卡以及内存使用情况的那些事儿

今天为大家分享下关于内存的事儿可能很久之前,我们的获取是否有 外置内存是这样的(是否有sd卡以及sd卡相关内存信息)?public static StatFs getSDMemory(Context context) { StatFs statfs = null; //判断是否有插入存储卡 if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { //取得sdcar

2020-06-15 16:07:42 511

原创 关于handle的那些事?

2020-06-15 15:48:41 151

原创 Android Retrofit2使用详解及从源码中解析原理

就目前来说Retrofit2使用的已相当的广泛,那么我们先来了解下两个问题:1 . 什么是Retrofit?Retrofit是针对于Android/Java的、基于okHttp的、一种轻量级且安全的、并使用注解方式的网络请求框架。2 . 我们为什么要使用Retrofit,它有哪些优势?首先,Retrofit使用注解方式,大大简化了我们的URL拼写形式,而且注解含义一目了然,简单易懂;其次,Retrofit使用简单,结构层次分明,每一步都能清晰的表达出之所以要使用的寓意;再者,Retrofit支持

2020-06-08 10:08:43 404

原创 图片框架-Glide的源码和缓存原理简述

比较流行的有ImageLoader,Picasso,Fresco,Glide。1 ImageLoader是很早的图片加载框架,支持图片下载进度的监听,支持View滚动过程中暂停加载。支持多种缓存策略比如最大先删除,最少使用先删除等。2 Picasso简洁轻量,支持图片缓存使用的监控,支持优先级处理,支持延迟加载,自己不参与本地缓存而是交给OkHttp去实现。3 Fresco框架较大,使用比较繁琐,支持Gif图片,支持流式显示,类似于网页模糊渐进式显示图片,两个内存缓存和一个Native缓存构建三级缓存

2020-06-08 09:46:13 241

原创 android开发针对api28引入最新butterknife出现异常

1.Error: Invoke-customs are only supported starting with Android O (–min-api在gradle.build中添加以下内容:defaultConfig { compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 }}2.Error: Attribute a

2020-05-12 14:20:47 845 1

原创 MaterialDesign 中悬浮吸顶效果实现

针对目前开始着手MaterialDesign风格设计的,着实方便了很多,以前的悬浮吸顶最起码的话要去根据View去计算Width Height, 滑动距离X y来改变Titltbar的变化和事件的监听。对此,对于MaterialDesign 中悬浮系统进行总结,大家一起探讨1.首先不多说,直接导入Design包 以及recyclerviewimplementation 'com.android.support:design:28.0.0' imple..

2020-05-12 12:00:34 506

原创 关于Retrofit+rxjava的使用

大家好:针对retrofit+rxjava的整合。博主本人进行在设计过程中进行的是一个基础的架构的封装。跟大家分享下并继续改善。首先。大家都知道Retrofit是一个代理okhttp的网络代理 ,首先针对retrofit简单用法。public class RetrofitApi { private RetrofitService retrofitService; privat...

2020-04-27 14:39:45 218

转载 什么?RecyclerView中获取点击位置的接口被废弃了?

各位小伙伴们,大家早上好。上个礼拜,我在公众号的某篇文章下面看到这样一条留言:什么?holder.adapterPosition被划线不推荐使用了?《第三行代码》这才刚刚出版,竟然就有API被弃用了,我决定对这个问题好好研究一下,并加急写一篇文章进行分析。仔细一看,holder.adapterPosition这不就是我们平时在RecyclerView里面用于获取点击位置的方法么,常用...

2020-04-27 14:05:53 333

转载 理论经典:TCP协议的3次握手与4次挥手过程详解

摘要: 本文将分别讲解经典的TCP协议建立连接(所谓的“3次握手”)和断开连接(所谓的“4次挥手”)的过程。1、前言尽管TCP和UDP都使用相同的网络层(IP),TCP却向应用层提供与UDP完全不同的服务。TCP提供一种面向连接的、可靠的字节流服务。面向连接意味着两个使用TCP的应用(通常是一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。这一过程与打电

2017-11-15 10:25:01 233

转载 XUtils之注解机制详解

各位小伙子们,这篇文章说一下xUtils里面的注解原理。      先来看一下xUtils里面demo的代码:[java] view plain copy@ViewInject(R.id.tabhost)      private FragmentTabHost mTabHost;  @ViewInject(R.id.big_

2017-11-15 09:53:28 405

转载 Android视图绘制流程完全解析,带你一步步深入了解View(二)

在上一篇文章中,我带着大家一起剖析了一下LayoutInflater的工作原理,可以算是对View进行深入了解的第一步吧。那么本篇文章中,我们将继续对View进行深入探究,看一看它的绘制流程到底是什么样的。如果你还没有看过我的上一篇文章,可以先去阅读 Android LayoutInflater原理分析,带你一步步深入了解View(一)  。相信每个Android程序员都知

2017-03-03 23:09:21 243

转载 Android LayoutInflater 源码解析

大家对LayoutInflater一定不陌生,它主要用于加载布局,在Fragment的onCreateView方法、ListView Adapter的getView方法等许多地方都可以见到它的身影。今天主要聊聊LayoutInflater的用法以及加载布局的工作原理。什么是LayoutInflaterLayoutInflater是一个用于将xml布局文件加载为View或者ViewG

2017-03-03 23:04:47 297

转载 Android事件分发机制完全解析,带你从源码的角度彻底理解(上)

其实我一直准备写一篇关于Android事件分发机制的文章,从我的第一篇博客开始,就零零散散在好多地方使用到了Android事件分发的知识。也有好多朋友问过我各种问题,比如:onTouch和onTouchEvent有什么区别,又该如何使用?为什么给ListView引入了一个滑动菜单的功能,ListView就不能滚动了?为什么图片轮播器里的图片使用Button而不用ImageView?等等……对于这些

2017-02-27 23:15:57 194

转载 GOOGLE VR SDK开发VR游戏,VR播放器之一

最近一年来,VR虚拟现实和AR增强现实技术的宣传甚嚣尘上。其实VR,AR技术很早就有了,一直没有流行开来,不可否认价格是影响技术推广的最大壁垒。谷歌对VR最大的贡献是提供了廉价的谷歌眼镜,按照GOOGLE提供的图纸,使用两个放大镜和一个披萨盒就能轻松DIY出自己的VR眼镜,同一时期谷歌推出来开源的VR SDK,使得开发者可以轻松构建VR游戏和VR播放器,使得几乎所有对这一切感兴趣的公司可以轻松的低成本的在技术上布局VR产业链。很多VR眼镜已经降到了几十块钱,毫无疑问,谷歌又借着廉价和开源改变了我们的世界。

2016-08-23 14:44:23 750

DanaKu.zip

主要是针对原生和h5 js的交互,最原始的方式进行交互,这种方式也是为了后来的跨平台webjavascritbridge 和cordova 做了铺垫

2020-06-12

TestCordova.zip

针对H5和Native 跨平台交互,主要Native 集成于CorDovaActivity,使其交互更简单。

2020-05-12

MaterialDesign.zip

主要是记录了MaterialDesign的实现,有横向滑动,侧滑 。悬浮吸顶。 只需属性代码设置就能完成,减少了自定义View的麻烦,完全是福利啊。

2020-05-12

AndroidPermission-1.0.0.zip

针对Android 6.0 权限申请的的插件工具,很值得用哦,大大提高效率,随用随生成,简化了操作,一般基于Activity进行申请

2020-04-27

DanaKu.zip

针对retrofit+rxjava进行一个基本的网络封装架构,省去了每次写网络请求或者返回success code 判断,大大提升开发效率

2020-04-27

Volley网络框架

网络请求首选,封装第三方的网络请求,便于频繁的网络操作。当然也可根据个人进行优化.一起学习吧,,

2015-09-11

还不错的一款软件

可以实现ListView多复杂功能,,有你意想不到的收获

2014-07-23

空空如也

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

TA关注的人

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