- 博客(39)
- 资源 (3)
- 收藏
- 关注
原创 Java进阶-简单了解泛型
Java中的泛型 一、泛型的类型 1.1 泛型类 1.2 泛型接口 1.3 泛型方法 二、限定类型 2.1 类型变量的限定-泛型类 2.2 类型变量的限定-泛型方法 三、泛型的约束和局限性 四、泛型类型的继承规则 五、通配符 六、类型擦除
2020-04-17 21:03:01
288
原创 算法基础-十大排序算法
十大排序算法 排序就是将一组对象按照某种逻辑顺序重新排列的过程。 冒泡排序、简单选择排序、简单插入排序、希尔排序、归并排序、堆排序、计数排序、桶排序、基数排序。 排序方法对比
2020-04-10 11:47:38
378
原创 设计模式-面向对象(oop)的七大原则
面向对象(oop)的七大原则 一、单一职责原则 – SRP 二、开闭原则 – OCP 三、里氏替换原则 -- LSP 四、依赖倒置原则 -- DIP 五、接口隔离原则 -- ISP 六、迪米特原则 -- LOD 七、合成复用原则--CRP
2020-03-14 22:56:59
640
原创 自定义View之刻度盘
自定义View之刻度盘 实现思路: 1.根据显示区域和UI效果计算角度,例如: 2.自定义属性 3.绘制onDraw,通过移动坐标原点和旋转画布的方式,使每一次绘制进度条坐标一致。 4.定义progress属性,使用属性动画方式添加动画效果。 一、自定义属性的声明与获取 1.1 自定义xml属性(Values/attrs.xml) <resources>...
2018-06-05 17:10:57
911
原创 侧滑菜单--DrawerLayout的使用
DrawerLayout的使用简介:DrawerLayout是【Support v4】包中实现了侧滑菜单效果的控件。DrawerLayout分为侧边菜单和主内容区两部分,侧边菜单可以根据手势展开与隐藏,主内容区的部分也可以随着菜单的点击而变化(需要自己实现)
2017-09-21 19:18:08
537
原创 仿微信语音消息的录制和播放
仿微信语音消息的录制和播放一、简述效果:实现功能: 长按Button时改变Button显示文字,弹出Dialog(动态更新音量),动态生成录音文件,开始录音; 监听手指动作,规定区域。录音状态下手指划出规定区域取消录音,删除生成的录音文件; 监听手指动作。当手指抬起时,判断是否开始录音,录音时长是否过短,符合条件则提示录音时长过短;正常结束时通过回调返回该次录音的文件路径和时长。
2017-09-21 09:01:53
6248
原创 MediaPlayer的使用
MediaPlayer的使用简介:Android应用程序中的音频和视频的播放通常有MediaPlayer类进行处理。使用MediaPlayer,能播放存储在应用程序资源、本地文件、ContentProvider、网络URL的流式传输中的媒体。MediaPlaye对音频和视频文件以及数据流的管理是作为一个状态机来处理的。状态机详细资料,点击这里跳转简单来说,就是: 对将要播放媒体的MediaPlaye
2017-09-18 14:26:09
876
原创 使用CrashHandler来获取应用的crash信息
使用CrashHandler来获取应用的crash信息 实现Thread.UncaughtExceptionHandler,在uncaughtException()方法中获取异常信息并将其储存到SD卡或者上传到服务器,然后调用Thread的setDefaultUncaughtExceptionHandler()方法将它设置成线程默认的异常处理器
2017-08-16 10:37:37
690
原创 GreenDao3.0的使用
GreenDao3.2的使用 配置:导包、插件、自定义路径 注解说明 初始化 简单使用:增删改查 高级查询:queryBuilder、原生SQL、1:1查询、1:N查询 RxDao:配置、使用 数据库加密 数据库升级
2017-08-10 19:01:54
1479
原创 Android运行时权限
Android运行时权限 危险权限和危险权限组 原生API申请及封装 EasyPermission申请 PermissionsDispatcher申请
2017-08-03 19:02:24
1723
原创 流式布局--标签
自定义流式布局 实现标签功能自定义控件 FlowLayout(extends ViewGroup)实现思路:1.动态测量View的宽高;2.遍历子元素,动态设置子元素的位置;3.根据String[] 向 FlowLayout动态添加子元素;4.添加子元素的点击事件。5.子元素使用TextView。
2017-07-28 18:31:55
370
原创 RecyclerView的简单使用
RecyclerView的简单使用 1.Adapter 2.viewholder 3.LayoutManager 4.ItemDecoration 5.ItemAnimator 6.添加响应事件OnItemClickListener和OnItemLongClickListener
2017-07-28 14:05:42
523
原创 Multiple dex files define (jar包冲突)
Multiple dex files define (重复引用) 主 module 和 library module在library中同时引入相同的“包” 主 module 中多个依赖引用了相同的“包”
2017-07-10 11:30:48
13644
原创 RxJava2.0的使用-2
指定工作线程 操作符 map 操作符 flatMap 操作符 concatMap 操作符 zip 操作符 buffer 操作符 take 操作符 distinct 操作符 filter 操作符 sample
2017-05-25 18:40:43
1904
原创 Android Studio添加忽略文件
Android Studio 添加忽略文件方式一 使用Settings添加1.File:忽略指定的文件local.properties 是用来保存项目依赖信息 2.Directory:忽略文件夹下所有文件(1) .gradle 此文件夹是用来保存gradle的依赖信息 (2) .idea 此文件夹是用来保存开发工具的设置信息 (3) 所有build文件夹(包括三方) build文件夹是
2017-05-23 14:21:00
11256
原创 Retrofit2.0的使用
Retrofit2.0 一、添加依赖 compile 'com.squareup.retrofit2:retrofit:2.2.0' 二、简单使用 RetroFit使用步骤: 1.定义一个接口(封装url地址和数据请求) 2.实例化retrofit 3.调用retrofit实例创建接口服务对象 4.调用接口中的方法获取Call对象 5.call对象请求(异步\同步请求...
2017-05-23 13:57:45
992
原创 OkHttp的使用
OkHttp的使用 一、添加依赖 compile 'com.squareup.okhttp3:okhttp:3.7.0' 二、简单使用 OkHttp使用步骤可以总结为: 1.创建OkHttpClient对象 2.构造Request 3.将Request封装为Call 4.执行call(异步\同步请求)拿到Response 2.1 get请求 例子描述:发起get请求...
2017-05-23 13:54:46
819
原创 MVP架构模式
MVP架构模式 一、简介 二、MVP的简单例子 三、MVP与Activity、Fragment的生命周期 四、MVP的内存泄漏问题
2017-05-17 23:39:57
1151
原创 ShareSDK集成
1.ShareSDK集成 2.申请ShareSDK的AppKey 3.ShareSDK快速集成 4.配置AndroidManifest.xml 5.ShareSDK自定义ui 6.ShareSDK实现不同平台差异化分享
2016-09-06 16:02:10
906
原创 eclipse环境修改包名
eclipse环境下修改Android工程包名 1.选中我们需要更改的包 -> 右击 ->Refactor ->Rename,出现下面的界面,选中前面三个选项 -> 选中Preview,下一步点击OK即可。 注意:修改报名时,首先看你的根包下有多少子包,找到最底层的子包或文件修改,由子包逐级向上修改。 2.包名全部修改完成以后,接着修改manife文件。 修改前: 使用以下方式修改:
2016-09-03 22:44:05
620
原创 Android项目里集成Cordova详解
自定义cordova插件;Android studio环境下将CordovaLib作为依赖导入;自定义Cordova插件;cordova自定义java类中的一些问题;在CordovaActivity中添加原生View组件;在Fragment里使用CordovaWebView;Fragment拦截返回键
2016-07-21 18:10:52
25062
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅