摘要: 设计模式之建造者设计模式(也叫生成器模式) 建造者模式就是将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示 1:使用建造者模式的话,它封装了一个产品的构造过程,并且允许按照预定的步骤构造产品。同时,向客户端隐藏了产品的内部表现 2:一般产品类和建造者类是比较稳定的,因此,将主 阅读全文
posted @ 2017-07-01 16:17 让学习如呼吸一般自然 阅读(359) 评论(1) 推荐(1) 编辑
摘要: 1:view动画 @1:xml中 alph:渐变透明度动画效果 scale:渐变尺寸伸缩动画效果 translate:画面转换位置移动动画效果 rootate:画面转移旋转动画效果 @2:JavaCode中 AlphaAnimation:渐变透明度动画效果 ScaleAnimation:渐变尺寸伸缩 阅读全文
posted @ 2018-10-09 16:01 让学习如呼吸一般自然 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 1. 2 3. 阅读全文
posted @ 2017-11-02 11:37 让学习如呼吸一般自然 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 代码块的分类 1.普通代码块 存在与方法之中,可以执行多次 2.构造代码块 和构造函数同一个等级,但是先执行构造代码再执行构造函数,可以执行多次 3.静态代码块 先于构造代码块执行,只会执行一次 阅读全文
posted @ 2017-11-02 11:35 让学习如呼吸一般自然 阅读(470) 评论(0) 推荐(0) 编辑
摘要: 内存泄漏是一些没有使用的引用没有得到及时回收,导致内存泄漏 1.常见的内存泄漏是一些静态变量的使用,导致内存泄漏 静态变量的使用,静态变量持有外部类的引用,比如在activity中,一些变量持有activity的引用,导致activity不能销毁,造成内存泄漏。 2.匿名内部类的使用(线程,asyn 阅读全文
posted @ 2017-11-02 11:31 让学习如呼吸一般自然 阅读(912) 评论(0) 推荐(0) 编辑
摘要: 1.textview的绘制过程 ondraw() onMeasure() onLayout() 2.多渠道打包 在清单列表中配置渠道信息 在build.gradle中进行配置我们需要打包的渠道 3.分包 build.gradle中配置 4.数据库 5.内存优化 页面的重复绘制,通过开发者模式,看gp 阅读全文
posted @ 2017-11-01 14:14 让学习如呼吸一般自然 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 序列化和反序列化 序列化:是将对象转化为字节。‘’ 反序列化:将字节转化为对象。 1.parcelable 使用binder为载体,效率高,节省内存。不适合持久的保存对象 2.serializable 使用反射机制,在序列化的时候产生大量的临时变量,频繁调用gc.可以持久的保存对象 阅读全文
posted @ 2017-10-22 00:56 让学习如呼吸一般自然 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 1.图片选择,加载多张图片的时候出现内存溢出 2.listView的优化 布局的复用(convertView判断是否为空,为空就加载,不为空就复用)和控件的复用(创建viewHolder,设置setTag()和getTag()完成) 3.cecycleView的介绍 4.同时加载多个页面,中间的页面 阅读全文
posted @ 2017-10-09 18:19 让学习如呼吸一般自然 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 一 .据存储:文件、sp.contentProvider 1.shareepreference 跨进程同步,文件过大存取时间慢 二.内存对象序列化 序列化:将对象的状态信息转换为可以储或传输形式的过程 1.seralizeble:会产生大量临时变量 a2.parcelable:比serializab 阅读全文
posted @ 2017-10-07 20:50 让学习如呼吸一般自然 阅读(169) 评论(0) 推荐(0) 编辑
摘要: dispatchTouchEvent().onInterceptTouchEvent().onTouchEvent()这几个是触摸时间传递过程中重要的几个方法, dispathchTouchEvent是处理触摸事件分发,事件大多是从Activity的dispatchTouchEvent开始的,执行s 阅读全文
posted @ 2017-08-31 15:31 让学习如呼吸一般自然 阅读(240) 评论(0) 推荐(0) 编辑
摘要: headView的实际高度超过一个屏幕,但是显示的结果只有一个屏幕,超过一个屏幕高度意外的部分显示不全。 只使用了listView.getRefreshable().addHeadView(headView);headeView的高度超过一个屏幕, 在listView有数据的时候,显示是没有问题。l 阅读全文
posted @ 2017-08-29 14:32 让学习如呼吸一般自然 阅读(785) 评论(0) 推荐(0) 编辑