- 博客(27)
- 资源 (1)
- 收藏
- 关注
原创 安卓自定义漏斗-FunnelView
简介最近项目需要绘制一批图表控件,于是使用了MPChatAndroid框架,但是里面没有漏斗图,网上也没有合适的漏斗图。于是,只能自己造轮子咯。已开源至github:FunnelView,感兴趣的可以fork,star效果直接放图:效果图片默认效果自定义描述文字自定义宽度伸缩策略使用Step1在你的root build.gradle中添加:...
2019-02-25 16:33:53 306
原创 玩转Class之Class的各种骚操作(反射封装必看)
简介Class类表示正在运行的Java应用程序中的类和接口,枚举和基本数据类型,我们可以从中获取到类的一切相关信息,包括字段,方法,名称,父类,接口等常用方法介绍名称获取此类方法用于获取类的名称信息getName()方法如果是一个实体类,则会返回完整包名路径名称,例如位于com.hj.testclass包下的student类,则会返回com.hj.testclass.student...
2019-01-11 15:18:54 437
原创 Android性能优化-图片篇
(1)drawable目录详解(mdpi,hdpi,xhdpi,xxhdpi,xxxhdpi)1.1、图片在各个目录中要如何存放?(必须理解)android的drawable目录有:drawable-ldpi(低密度)drawable-mdpi(中等密度)drawable-hdpi(高密度)drawable-xhdpi(超高密度)drawable-xxhdpi(超超高密度)dra...
2019-01-11 15:18:05 343
原创 Android/java 多线程(六)-AsyncTask使用详解及源码分析
多线程系列历史文章:Android/java 多线程(一)-Thread的使用以及源码分析Android/java 多线程(二)-Thread的好兄弟HandlerAndroid/java 多线程(三)-HandlerThread的使用场景及源码解析Android/java多线程(四)-IntentServiceAndroid/java 多线程(五)-ThreadPoolExecutor...
2018-12-29 17:37:17 282
原创 Android/java 多线程(五)-ThreadPoolExecutor线程池的使用
多线程系列历史文章:Android/java 多线程(一)-Thread的使用以及源码分析Android/java 多线程(二)-Thread的好兄弟HandlerAndroid/java 多线程(三)-HandlerThread的使用场景及源码解析Android/java多线程(四)-IntentService前面几篇文章主要都是介绍的单个线程的运用以及原理,这篇文章开始讲解多个线程...
2018-12-25 14:18:52 431
原创 Android/java多线程(四)-IntentService
往期文章:Android/java 多线程(一)-Thread的使用以及源码分析Android/java 多线程(二)-Thread的好兄弟HandlerAndroid/java 多线程(三)-HandlerThread的使用场景及源码解析简介一个方便的能在子线程中运行的服务,一个IntentService对应一个线程,由于是四大组件,优先级比线程高,不易被系统回收,处理完任务还能主动回...
2018-12-25 14:17:32 205
原创 Android/java多线程(三)-HandlerThread的使用场景及源码解析
HandlerThread是什么?点开类楸一眼,这货是这样介绍自己的: * Handy class for starting a new thread that has a looper. The looper can then be * used to create handler classes. Note that start() must still be called.大意是...
2018-12-21 11:59:47 274 1
原创 Android/java 多线程(二)-Thread的好兄弟Handler
上一篇带大家了解了Thread的使用以及基本的运行原理,这一篇就带大家了解下Thread的好兄弟HandlerAndroid/java 多线程(一)-Thread的使用以及源码分析简介Handler机制在安卓中应用非常广泛,像我们常见的用于在子线程中更新UI:public class MainActivity extends AppCompatActivity { @Supp...
2018-12-20 23:22:06 246
原创 Android/java 多线程(一)-Thread的使用以及源码分析
线程的概念以及状态在学习线程之前,我们需要普及一个概念,每一个程序运行都会有一个父进程,我们的线程就是在此父进程中运行,拿Android来说,默认情况下,启动一个程序,所有的组件程序都运行在同一个进程中,并且会创建一个执行线程在该进程中,俗称"主线程",当我们在该线程中做了耗时的操作造成了程序卡顿,我们就叫“线程阻塞”了,此时就应该另起一个线程来执行耗时操作。要了解线程中方法的使用,就得先了解...
2018-12-20 23:21:22 228
原创 Android 自定义键盘,数字键盘随机
最近重构了下自定义键盘项目,现EasyKeyboard v1.4已发布,欢迎star项目介绍EasyKeyBoardViewEasyKeyBoardView旨在帮助开发者快速实现一个自定义键盘,无需实现键盘内部的输入逻辑,只需关注键盘的布局和输入后的功能实现即可功能介绍:该库是基于安卓原生键盘API实现,只需提供布局文件即可快速实现一个自定义键盘,内部已封装好键盘的输入逻辑,并提供...
2018-12-19 11:13:16 443
原创 学习objectbox数据库,看这个就够了
数据库简介objectbox数据库是greenrobot团队开发的全新非关系型数据库框架,该团队还开发过greenDao,EventBus等热门框架,可谓实力雄厚。按照官方介绍,该库有如下特点:
2018-01-19 13:40:19 1798 5
原创 一看就懂的自定义顶部粘性下拉控件TouchPullView全面剖析
文章首发于我的个人博客:www.huangjie.name,欢迎关注!共同学习,共同进步
2017-12-20 14:55:04 833 3
转载 给初学者的 RxJava2.0 教程 (九)
先来回顾一下上上节,我们讲Flowable的时候,说它采用了响应式拉的方式,我们还举了个叶问打小日本的例子,再来回顾一下吧,我们说把上游看成小日本, 把下游当作叶问, 当调用Subscription.request(1)时, 叶问就说我要打一个! 然后小日本就拿出一个鬼子给叶问, 让他打, 等叶问打死这个鬼子之后, 再次调用request(10), 叶问就又说我要打十个! 然后小日本又派出十个鬼子给
2017-06-03 19:30:05 438
转载 给初学者的 RxJava2.0 教程 (八)
前言在上一节中, 我们学习了FLowable的一些基本知识, 同时也挖了许多坑, 这一节就让我们来填坑吧.正题在上一节中最后我们有个例子, 当上游一次性发送128个事件的时候是没有任何问题的, 一旦超过128就会抛出MissingBackpressureException异常, 提示你上游发太多事件了, 下游处理不过来, 那么怎么去解决呢?我们先来思考一下, 发送128个事件没有问题是因为FLowa
2017-06-03 19:07:15 597
转载 给初学者的RxJava2.0教程(七)
前言上一节里我们学习了只使用Observable如何去解决上下游流速不均衡的问题, 之所以学习这个是因为Observable还是有很多它使用的场景, 有些朋友自从听说了Flowable之后就觉得Flowable能解决任何问题, 甚至有抛弃Observable这种想法, 这是万万不可的, 它们都有各自的优势和不足.在这一节里我们先来学习如何使用Flowable, 它东西比较多, 也比较繁琐, 解释起来
2017-06-03 19:00:38 560
转载 给初学者的RxJava2.0教程(六)
前言在上一节中, 我们找到了上下游流速不均衡从而导致BackPressureException出现的源头 , 在这一节里我们将学习如何去治理它 . 可能很多看过其他人写的文章的朋友都会觉得只有Flowable才能解决 , 所以大家对这个Flowable都抱有很大的期许 , 其实呐 , 你们毕竟图样图森破 , 今天我们先抛开Flowable, 仅仅依靠我们自己的双手和智慧 , 来看看我们如何去治理 ,
2017-06-03 18:55:16 394
转载 给初学者的RxJava2.0教程(五)
前言大家喜闻乐见的Backpressure来啦.这一节中我们将来学习Backpressure. 我看好多吃瓜群众早已坐不住了, 别急, 我们先来回顾一下上一节讲的Zip.正题上一节中我们说到Zip可以将多个上游发送的事件组合起来发送给下游, 那大家有没有想过一个问题, 如果其中一个水管A发送事件特别快, 而另一个水管B 发送事件特别慢, 那就可能出现这种情况, 发得快的水管A 已经发送了1000个事
2017-06-03 18:48:58 889
转载 给初学者的 RxJava2.0 教程 (四)
前言在上一节中, 我们提到了Flowable 和Backpressure背压, 本来这一节的确是想讲这两个东西的,可是写到一半感觉还是差点火候,感觉时机未到, 因此,这里先来做个准备工作, 先带大家学习zip这个操作符, 这个操作符也是比较牛逼的东西了, 涉及到的东西也比较多, 主要是一些细节上的东西太多, 通过学习这个操作符,可以为我们下一节的Backpressure 做个铺垫.正题照惯例我们还是
2017-06-03 18:42:25 449
转载 给初学者的RxJava2.0教程(三)
前言上一节讲解了线程调度, 并且举了两个实际中的例子, 其中有一个登录的例子, 不知大家有没有想过这么一个问题, 如果是一个新用户, 必须先注册, 等注册成功之后再自动登录该怎么做呢.很明显, 这是一个嵌套的网络请求, 首先需要去请求注册, 待注册成功回调了再去请求登录的接口.我们当然可以想当然的写成这样: private void login() { api.login(ne
2017-06-03 18:34:31 357
转载 给初学者的RxJava2.0教程(二)
前言上一节教程讲解了最基本的RxJava2的使用, 在本节中, 我们将学习RxJava强大的线程控制.正题还是以之前的例子, 两根水管:正常情况下, 上游和下游是工作在同一个线程中的, 也就是说上游在哪个线程发事件, 下游就在哪个线程接收事件.怎么去理解呢, 以Android为例, 一个Activity的所有动作默认都是在主线程中运行的, 比如我们在onCreate中打出当前线程的名字: @O
2017-06-03 18:24:24 303
转载 给初学者的RxJava2.0教程(一)
前言上个月RxJava2正式版发布了,但目前国内的资料还比较少,以前使用过RxJava1只需要看看更新文档就知道怎么使用了,但还有一些以前没用过RxJava的朋友可能就不知道怎么办了,不知道该看RxJava1还是直接跳到RxJava2。所以写下这个教程, 帮助那些没有用过RxJava的朋友入门。我先回答这个问题:学习RxJava2需要先学习RxJava1吗?这个问题就像论坛经常问学Ja
2017-05-31 21:44:19 329
原创 Android Signature V2 Scheme签名下的新一代渠道包打包神器--Walle(瓦力)使用详解
开头总要说点什么话说Android studio升级到3.0后,发现打出来的渠道包在7.0的系统上无法安装,于是查了下资料,发现是V2签名的问题,于是开始着手配置V2签名的渠道包配置, 如果不需要V2签名的同学可以在gradle里这样设置 android { ... defaultConfig { ... } signingConfigs { config{
2017-05-24 21:43:38 2170
原创 安卓检测bug插件---FindBugs-IDEA使用详解
一、介绍Findbugs,看名字就知道是这个插件的作用了,它是一个静态分析工具,它检查类或者jar文件,将字节码和一组缺陷模式进行对比以发现可能的问题。有了静态分析工具,就可以在不实际运行程序的情况下对软件进行分析。不是通过分析类文件的形式或结构来确定程序的意图,而是通常使用Visitor模式来鉴别代码是否符合一些固定的规范。二、安装首先打开Android studio的设置中的插件,输入findb
2017-05-12 15:17:53 1027
原创 Error:Jack is required to support java 8 language features.
目录ViewPager使用详解ViewPager使用详解ViewPager 详解(一)—基本入门 ViewPager 详解(二)—详解四大函数 ViewPager 详解(三)—PagerTabStrip与PagerTitleStrip添加标题栏的异同 ViewPager 详解(四)—-自主实现滑动指示条 ViewPager 详解(五)—–使用Fragment实现ViewPager滑动
2017-04-22 12:59:46 290
原创 安卓自定义数字键盘(含4位自动加空格的功能,仿支付宝键盘,自动顶布局)
安卓自定义数字键盘(含4位自动加空格的功能,仿支付宝键盘,自动顶布局)效果图:效果动图下载 实现方法由于需要实现自动顶布局,所以采用的popwindow的方法实现的软键盘,重写Edittext,并且根据项目需求加入输入4位自动空格的方法自定义属性xml 自定义键盘布局 spance 是否开启4位空格 randomkeys 是否开启随机数字键盘自定义方法setKeyBordFocuable(bo
2017-03-20 01:01:25 1086
原创 html中一些常见问题的解决方法
扯扯淡:第一次写博客,最近在学习html5,把遇到的坑记录下来,一是能加深一下印象,二能帮助一下遇到相同坑的童鞋,三能锻炼自己的表达能力,一举三得,哈哈,如有错误欢迎批评指正.........1.a标签在手机上点击之后会出现一个带颜色的方框,奇丑无比有木有,怎么去掉呢,方法: 在a标签样式中加入:-webkit-tap-highlight-color:rgba(0,0,
2016-10-13 22:47:17 3879
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人