- 博客(17)
- 资源 (43)
- 收藏
- 关注
原创 Android——PorterDuffXfermode
个人博客:haichenyi.com。感谢关注简介 PorterDuffXfermode是什么鬼?个人理解,简单的来讲就是做两个Bitmap操作的,什么操作呢?有裁剪,合并等等,有16种图形混合模式。先举一个简单的例子,我们在慢慢讲:/** * Author: 海晨忆 * Date: 2018/3/28 * Desc: */public class MyCustom...
2018-03-28 20:21:12 397
原创 Android自定义View——贝赛尔曲线
个人博客:haichenyi.com。感谢关注 本文针对有一定自定义View的童鞋,最好对贝赛尔曲线有辣么一丢丢了解,不了解也没关系。花5分钟看一下 GcsSloop的 安卓自定义View进阶-Path之贝塞尔曲线。本文的最终效果图: 思路首先他是一个只有上半部分的正弦形状的水波纹,很规则。其次,他这个正弦图左右在移动。然后,就是它这个自定义View,上下也在移动,是...
2018-03-27 20:17:27 319
原创 Android自定义刷新布局——Ultra-Pull-To-Refresh-With-Load-More(二)
个人博客:haichenyi.com。感谢关注回顾上一篇,我们讲到了Ultra-Pull-To-Refresh的基本用法。分成四步:xml里面定义控件PtrFrameLayout设置相关属性添加Header,Footer,并监听监听刷新过程思路 目的: 做一个我们自己的自定义刷新的动画(我们先不管动画是什么,不同的需求,动画都不一样) 我们前面讲到的主...
2018-03-23 17:23:17 818
原创 Android下拉刷新,上拉加载——Ultra-Pull-To-Refresh-With-Load-More(一)
个人博客:haichenyi.com。感谢关注简介Android里面刷新和分页加载是常见的,刷新有Google的SwipeRefreshLayout,但是UI不同意,非要跟IOS一样,那就没办法了。开源框架链接:Ultra-Pull-To-Refresh-With-Load-More。这个开源框架是基于Ultra-Pull-To-Refresh拓展了一个上拉加载功能。作者:廖祜...
2018-03-23 13:37:39 1304
原创 Java 加密算法(二)
个人博客:haichenyi.com。感谢关注补充知识点:密钥: 加密方用公钥,解密方用私钥重要的事情强调六遍:不用自己写加密算法不用自己写加密算法不用自己写加密算法不用自己写加密算法不用自己写加密算法不用自己写加密算法Cipher类 Android有专门用来加密的工具类Cipher类,他里面封装了几种常用的加密算法,本篇介绍两种AES,RSA...
2018-03-09 16:58:57 1971
原创 Java 加密算法(一)
个人博客:haichenyi.com。感谢关注补充知识点:字节:也就是 byte 是一种统计单位,表示数量的多少字符:是指计算机中使用的文字和符号,比如:1、2、3、A、S、D、$、%等等符号字节与字符的对应关系:它们完全不是一个概念,所以,没有什么有没有区别这个说法。不同的编码,两者的对应关系是不相同的,我这里就说常用的两种编码:ASCII码中,一个英文字母(不区分大小...
2018-03-08 16:36:07 1304
原创 EventBus源码解析(二)——注册
个人博客:haichenyi.com。感谢关注 之前我们讲过获取EventBus对象的源码,这一篇,我们来讲讲注册的源码。推荐EventBus 3.0进阶:源码及其设计模式 完全解析简介/** * Registers the given subscriber to receive events. Subscribers must call {@link #unreg...
2018-03-07 17:31:57 408
原创 Java 设计模式(Design Patterns)(三)
个人博客:haichenyi.com。感谢关注十三、策略模式顾名思义:不同的策略,对应我们项目中用到的地方就是,同一个功能,不同的实现方法。就比方说登录功能:我们有帐号密码登录,QQ第三方登录,微信第三方登录等等。其实我个人认为最典型的就是:同一个接口方法,不同的实现方式。interface LoginInterface{ void login();}public...
2018-03-07 13:18:56 164
原创 Java 设计模式(Design Patterns)(二)
个人博客:haichenyi.com。感谢关注六、适配器模式分类有三种:类的适配器模式,对象的适配器模式,接口的适配器模式,我印象最深刻的是接口适配器模式接口适配器模式 有的时候,我们写的一个接口,会有很多种方法。而,我们的实现类只需要实现某一种,或者某几种,所以,我们这里会借助一个抽象类,去实现接口的所有方法。我们的具体实现类跟这个抽象类去打交道,而不是跟原始的接口去打交道...
2018-03-07 13:18:04 144
原创 Java 设计模式(Design Patterns)(一)
个人博客:haichenyi.com。感谢关注设计模式的分类创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。...
2018-03-06 17:49:38 319
原创 Java反射机制
个人博客:haichenyi.com。感谢关注简介 在运行过程中,对任意一个类,都能知道这个类的所有属性和方法。对于任一个对象,都能调用他的任意一个方法和属性。这种动态获取信息以及动态调用对象的方法称为java语言的反射机制用法我这里就列出我常用的两个方法私有类和变量方法Methods 方法 用途 getDeclaredMethods()...
2018-03-06 15:39:18 122
原创 EventBus源码解析(一)——获取EventBus对象
个人博客:haichenyi.com。感谢关注简介我们先来看一下他的类注释/** * EventBus is a central publish/subscribe event system for Android. Events are posted ({@link #post(Object)}) to the * bus, which delivers it to su...
2018-03-06 12:10:02 205
原创 Android WIFI功能——WifiManager
个人博客:haichenyi.com。感谢关注 之前做了关于Android wifi的相关功能,这里做一个记录第一步:获取WifiManagerWifiManager wifiMgr = (WifiManager)Context.getSystemService(Context.WIFI_SERVICE);第二步:获取周围热点信息和已连接wifi信息List&...
2018-03-05 16:31:43 11874 1
原创 简单的蓝牙通信
个人博客:haichenyi.com。感谢关注 之前公司做智能家居类型,其中做了一个智能衣柜项目,与衣柜通信就是用的蓝牙通信。一些操作一些简单的开关指令,蓝牙通信与socket是类似的。步骤清单文件注册权限启动蓝牙服务(记得在清单文件中静态注册服务)注册蓝牙广播(在蓝牙服务中动态注册蓝牙广播)搜索,绑定,完成退出app,停止服务,并在蓝牙服务的onDestory方法中取...
2018-03-05 15:41:41 359
原创 Android拍照功能——TakePhoto
个人博客:haichenyi.com。感谢关注之前在写项目框架Andoroid 6.0,动态获取权限的时候就提到过TakePhoto开源框架简介一款用于在Android设备上获取照片(拍照或从相册、文件中选择)、裁剪图片、压缩图片的开源工具库依赖implementation 'com.jph.takephoto:takephoto_library:4.0.3'...
2018-03-05 13:59:55 1647
原创 Android图片压缩——Luban鲁班压缩
个人博客:haichenyi.com。感谢关注 Android让人头疼的OOM,造成OOM的原因之一就是图片,现在的手机像素越来越高,随便一张图片都是好几M,甚至几十M,这样的照片加载到app,可想而知,随便加载几张图片,手机内存就不够用了,自然而然就造成了OOM,所以,Android的图片压缩异常重要。这里,我推荐一款开源框架——Luban效果与对比 这里就不放效果图了,我拷...
2018-03-02 16:12:15 27888 7
原创 从零开始搭建一个主流项目框架(八)—— 私有目录被限制访问(Android 7.0)
我这里只说我关心的问题,并不是说Android 7.0只增加了一个“私有目录被限制访问”,当然还有其他的变化。android 7.0的新特性中,对程序员开发造成最直接的变化就是FileUriExposedException异常,这个异常的产生就是由私有目录被限制访问造成的 Andoird 7.0中为了提高文件的安全性,面向Android N或者更高版本的应用私有目录将会被禁止访问,常见最...
2018-03-01 17:37:45 1071
BufferTextInputLayout的简单用法
2017-03-28
基于SystemBarTint、BottomNavigationBar实现的一个简单的项目框架
2017-03-18
MyApplication.rar
2019-05-24
MVP+Dagger.Android+LiveData+RxJava2.0+Retrofit2.0+OkHttp
2018-12-10
Dagger.Android+LiveData搭的简单的项目框架
2018-12-04
MyProject8
2018-03-01
CoordinatorLayout的常见用法4种
2017-09-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人