240 发简信
IP属地:北京
  • 告别.xml文件,用AOP方式实现shape,selector

    网上关于替代在.xml文件里写shape、selector标签的方式有很多,为什么还要自己再写一篇呢? 最近在学习AOP,就想着能否用AOP的方式来实现能,于是就有了这篇文章...

  • @Double_journey 添加了一个app:direction属性

    Android -- 一个滑动旋转的弧形菜单

    效果图 这是一个自定义的弧形菜单控件,手指滑动可以对其进行旋转,点击图标可以做一些操作,功能就是这样,下面介绍是如何实现的。 功能实现 自定义属性 要实现这样一个控件,首先要...

  • 告别onActivityResult,用实现AOP方式获取startActivityForResult结果

    每次我们使用startActivityForResult方法时,如果需要接收返回的结果,总得在onActivityResult中进行处理。如果业务比较复杂,有多个界面携带数据...

  • 120
    DiskCache -- 一个封装DiskLruCache的缓存工具类

    效果图 用法示例 1.保存String 获取String 2.保存Object(任意实现Serializable的Object) 获取Object 3.保存Bitmap 获取...

  • EventBus源码解析

    EventBus的基本用法 注册事件 解除注册 发送事件 处理事件 注解@Subscribe 这是一个自定义的运行时注解,有三个属性,threadMode、sticky、pr...

  • Handler、Looper、MessageQueue源码解析

    首先打开Looper类,可以看到头部的说明中有一个小例子,如下: 这是一个在子线程中创建Handler的例子,我们就以这个例子来讲解。 Looper.prepare(); 在...

  • 120
    RxDialog(二) -- 一个基于RxJava的Dialog

    效果图 请先看 本文在上一篇文章的基础上增加了在使用setView(iew)设置Diaolog的View时,将View上控件的点击事件转化成Rxjava的形式。 先看下RxD...

  • RxDialog(一) -- 一个基于RxJava的Dialog

    效果图 看图是和普通的Dialog一样。RxDialog的作用就是把一个普通的Dialog的按钮点击事件转化成Rxjava的形式。 我们先来看下普通的创建Dialog的形式:...

  • 120
    Android -- 一个自定义Button(不需要手写selector)

    效果图 在写Button时经常需要添加一个selector来作为背景,设置手指按下抬起、是否可用的状态,项目中往往会写很多的selector,StateButton就是来解决...