自定义博客皮肤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)
  • 收藏
  • 关注

原创 2017年回顾总结&&2018年展望

2017年总结:2017年,对于我来说是一个非常重要的一年,因为在这一年,我大学毕业,然后开始了人生另外一段旅程.在这一年中,收获了许多,也放弃了不少.对于收获的东西,比如技术,比如朋友and 减肥,放弃的东西,也是很重要的东西—>放下了追求的妹子.在技术方面,主要学习后端技术,spirng boot,由于之前接触过后端技术,不过由于项目原因,去搞了android,但是自己依然在学习 spring

2018-01-03 00:17:19 3533

原创 GIT 学习笔记

GIT

2017-12-13 14:11:59 285

原创 Service的onStartCommand()方法返回值详解

onStartCommand方法返回有4种 - START_STICKY - START_NOT_STICKY - START_REDELIVER_INTENT - START_STICKY_COMPATIBILITY 以下的情况都是在服务启动后,onStartCommand()返回值之后,服务被系统KILL了之后的情况描述。START_STICKY 指系统会重新创建ser

2017-11-25 20:59:56 7869

原创 关于组件化的一点思考

由于在公司负责的开发中没有涉及到这一部分,不过自己还是想学学,在学习了ARouter和“得到”APP技术组开源的组件化框架DDComponentForAndroid,有了自己的一点点思考(虽然在“得到”APP 关于这个框架的介绍中提到了这点思考,不过我还是准备把自己的一点思考记录下来)组件化:我的理解就是将不同的业务进行分离,比如登录模块就是一个登录组件,天气模块就是一个天气组件,每个模块由单独的人

2017-11-21 17:34:52 634

原创 关于MVP的一点思考(View被释放后,又调了View的方法,造成空指针)

当我们在使用 MVP 的时候(应该其他场景也有这种情况),我们在请求网络的时候,网络还没返回,这个时候View 被销毁了,那么 View 为 Null,这个时候去调用 View 的方法,就会造成空指针异常,一般来说,我们可以在销毁的时候进行cancel请求,但是也有可能没有被cancel,在这种情况下,我们可以用盘空的方法来进行处理,比如if (view != null) { //todo

2017-11-17 15:55:23 2223

原创 Android Studio 升级到3.0,gradle升级到4.1后报错

将AS升级到3.0,gradle 升级到4.1之后出现这个问题Error:Unable to resolve dependency for ‘:app@stage/compileClasspath’: Could not resolve project :library_base.意思就是在你的app的build.gradle 文件中有buildTypes { release {

2017-11-17 11:15:34 4599

原创 java-序列化

不用加Serializable也能序列化了(反正标题党) 直接上正文,普通的序列化就不说了,先上代码public class Test implements Serializable{ transient public Item item; private void writeObject(ObjectOutputStream out) throws IOException {

2017-11-16 11:39:05 135

原创 ARouter 拦截器与路由的实现(源码分析)

哈哈哈,之前说的ARouter后续分析来了,我是个老湿人。 由于我们的ARouter是通过注解的方式实现的,所以一上来又是APT那套东西,这次呢就不重点讲这个东西,大概说一下,主要笔者对于那些API也不是很熟,只是知道大概在干什么事。接下来就是正文了。 我们都知道,拦截器需要注解@Interceptor,这个注解的接口如下@Target({ElementType.TYPE})@Retentio

2017-11-03 18:23:18 2477

原创 ARouter 依赖注入实现原理(源码解析)

ARouter 依赖注入实现原理这里只是记录一下ARouter中的依赖注入的源码实现方式,对于ARouter的其他分析,比如路由等,将会在后面的博客中进行分享。1.首先我们知道要进行依赖注入的话,得先添加一个注解比如 @Autowired String name; @Autowired int age;2.然后我们在看看这个注解的定义:@Target({Elemen

2017-10-31 17:18:42 2801

原创 okhttp基本调用过程(源码解析)

1.先写一个okhttp的请求(同步) new Thread(new Runnable() { @Override public void run() { OkHttpClient okHttpClient = new OkHttpClient(); Request request =

2017-08-31 22:36:29 333

原创 Paint 使用

Paint 用法先申明一下,这个只是自己想对paint有个整体滴认识,所以才整理出来滴,里面的链接其实都是同一个, 比较难滴地方,都是参考这个大神滴文章来进行滴。。。 看到这里,已经实现了引流,哈哈哈,你们可以去看大神滴文章了。1. 关于text的方法1.1 ascent(都是直接翻译滴,其实就是返回到基线的距离)//根据当前的字体和文字大小返回上方(负)基线(上升)的距离。float as

2017-08-06 17:53:48 1763

原创 Canvas 详解

Canvas 详解题外话先插播题外话,其实这个canvas详解很多人都写过,好多还是大神写的,我的这个肯定不能和大神比了,有人就说这简直就是重复造轮子(其实吧,如果将轮子比作车轮,我认为我这里电瓶车的轮子,大神的是法拉利的轮子,两者之间是有不少差距滴,不过正因为有差距,我们才需要努力去学习),浪费时间,不过我却不这么认为,比如通过这一次整理canvas,我了解了它里面的大部分方法(有些还是不了解),

2017-08-05 22:52:26 1206

原创 android 自定义view 画饼图

android 自定义view 画饼图实现难点通过canvas.drawArc()来画出扇形,关键在于角度的计算和计算表述线的位置。具体的实现逻辑看下面的分解实现逻辑得到之前扇形的角度和 for (int j = 0; j < i; j++) { //计算之前的角度之和 degree += mBeanList.get(j).get

2017-07-26 20:22:01 572

原创 android 定时器

android 定时器 (奇葩需求)先说说这个定时器滴需求定时(这个就是废话了)当页面有定时器时,不管是否是destory了,只要时间没到,当再次进入这个页面时,不能重新计时。比如 A 进入 B 页面 ,在B页面开启定时器(假设60s)后, 回到了A页面 ,10秒后再次进入B ,这时,B页面显示的倒计时为50s(漂亮滴产品小姐姐想出来的需求,汝等屌丝也只能奋力实现啦。。。)。另外一点,貌似是还

2017-07-24 21:26:08 346

原创 圆点旋转 loading

圆点旋转 loading先上图主要代码1、得到变化的角度/** * 自定义的TypeEvaluator */ class CircleTypeEvaluator implements TypeEvaluator{ /** * 角度从π到0, * @param fraction 变化率 * @param startVa

2016-06-29 21:13:31 704

原创 RecyclerView 简单实现拖拽和滑动

recyclerview 拖拽和滑动的简单实现1、ItemTouchHelper.SimpleCallbackItemTouchHelper.SimpleCallback 是 ItemTouchHelper的一个简单实现类 通过这个类 我们可以非常方面的实现拖拽和滑动。 比如: ItemTouchHelper.Callback callback = new ItemTouchHel

2016-05-25 21:18:19 2140

空空如也

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

TA关注的人

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