- 博客(7)
- 收藏
- 关注
原创 性能优化(一)堆内存分析
前言 通过Android Studio的Memory Monitor工具,对各种数据类型,如:boolean,int,float,long,SparseArray,HashMap等在内存的占用情况进行分析;对一些特定场景下的代码编写,如:String拼接,OnClickListener等所消耗的内存情况进行分析;分析方式很简单,只是为了确切的验证以往的诸多代码经验,并更好的实践。 Memory
2017-04-09 23:02:42 618
原创 6.0运行时权限的总结与实践
为什么需要6.0运行时权限 更友好 6.0以前的安装时权限,会在应用安装时列出所有需要的权限,当列出一些危险权限时,用户不知每个权限的具体用途,可能因为这些权限警告而放弃安装应用。对于一些非装不可的应用,用户则不得不被迫接受所有权限,很容易安装了一些流氓APP,体验不佳。 6.0以后的运行时权限,可以在调用相关功能之前判断权限授权状态,并自定义提示弹框告知用户权限用途,使用户清楚了解之后,再
2017-02-25 20:13:04 356
原创 Android源码中的一种单例实现
单例模式的实现方式有懒汉,饿汉,双重校验锁,枚举,内部类等等,写法就不全部列举了。在读Android源码的时候无意间发现一个单例辅助类类类/frameworks/base/core/java/android/util/Singleton.java,可以实现懒汉式单例,写法挺奇特的,虽然是个hide类,不过拷贝出来就可以用了。 package android.util;/** * Singleton
2017-01-12 01:16:17 1116
原创 高仿蘑菇街欢迎页
蘑菇街欢迎页高仿效果这里这里…Demo下载地址前言 本文将介绍如何对蘑菇街欢迎页效果进行分析,拆分,并一步步实现1个高仿版本,最重要的设计思路包括以下2点: 1.ViewPager切换时,通过offset偏移量动态修改View元素属性 2.canvas上精细化的控制旋,移,缩,透明等view属性变化,进行动态绘制 效果拆解 首先可以把整体效果拆分为静态,动态2部分。静态:1个支持
2016-12-17 10:17:10 1109 4
原创 MVC,MVP,MVPVM(二)提升效率之Templates
文章目录1.MVC,MVP,MVPVM(一)实践之路 2.MVC,MVP,MVPVM(二)提升效率之Templates遗留问题 《MVC,MVP,MVPVM(一)实践之路》中讲到如何从MVC到MVPVM的转变,将各个模块分离,职责划清。不过有个缺点,就是类爆炸,为什么代码写着写着就MVC了,就是因为一个Activity搞定,写着爽。但是,如果要实现解耦,就一定意味着会有很多不同的职能类。如果采
2016-12-03 21:23:57 626
原创 MVC,MVP,MVPVM(一)实践之路
简介 分别使用MVC,MVP,MVP+VM,实践具体需求,对比优劣,逐步优化。 需求 实现我的押金页面,包含未缴纳,已缴纳,免押金3种状态 1.顶部title:3种状态展示不同文案; 2.金额:已缴纳,未缴纳状态金额字号,色值不同;免押金状态不展示; 3.底部tips:已缴纳,免押金状态展示不同文案;已缴纳状态,不展示; 4.按钮:未缴纳,已缴纳状态,文案,及点击事件
2016-12-01 09:44:59 1623 2
原创 DataBinding学习笔记(一)源码分析
DataBinding整体使用流程开发阶段UserModel.javapublic class UserModel { public String name; public String nickName; public int age; public UserModel(String name, String nickName, int age) {
2016-11-29 22:35:38 2348
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人