自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 Kotlin 构造器和单例模式

class AA{ init { }}1.这是一个最简单的类,他没有在头部做任何构造器的声明,这时他拥有一个默认的无参构造器,而这个构造器的内容要放在init块中。如果构造器没有操作的话,init可以省略。如果不想暴露这个构造器,可以在声明时设为private:class AA private constructor()2.声明带参构造器

2017-10-28 21:10:45 1221

原创 kotlin委托属性+SharedPreference实例

委托属性就是将一个成员变量委托给一个类管理,这个类需要实现getValue和setValue。换言之,属性将自己的get和set方法委托给了这个类的getValue和setValue。这种模式适用于简化存取一个值的情况,比如说sharedpreference的操作,原来存取一个值我们需要初始化sp对象然后存取,借助这个委托可以用一行代码实现。先来看最简单的委托类,只需要实现getV

2017-10-26 16:32:05 3111 1

原创 对convertView和ViewHolder的理解

在使用listview和recyclerview的过程中免不了要用到convertview和viewholder,所以理解他们的工作原理还是很有意义的。首先来看listview的使用,如果要写一个最简单的BaseAdapter的话,那么getView中直接用LayoutInflater根据布局文件生成一个View,然后再获取这个view的子组件设置属性,返回这个view就可以了。但是这

2017-10-23 21:17:28 8135

原创 Android Studio查看包依赖关系+删除冲突框架版本(如glide)

最近遇到了一个问题,我引入了glide 3.7版本,在使用过程中却发现无法正常使用链式语法设置placeholder和error等,于是我打开项目.idea-->libiraries,发现目录下glide的版本是4.0,很明显,有别的框架依赖了4.0,那么我现在就需要找到这个框架。1.使用Gradle View查看依赖树:首先搜索Gradle View插件安装重启。然后View--

2017-10-22 11:16:04 11385

原创 Android 源码设计模式读书笔记 前四章

一、面向对象六大原则单一职责原则(SRP):一个类应该只负责一个部分,这个责任的划分并不明确,我的理解就是说不要把应该拆分的功能放在一个类里,从而松耦合,提高扩展性。具体理解还是要结合书上的托片加载器的例子。开闭原则(OCP):系统对扩展开放,对修改封闭。要在尽量不修改原有代码的基础上对功能进行扩展,也就要求代码有很高的可扩展性。其实这几个原则都是设计模式的共同目标,很多地方都能得到体现。

2017-10-20 21:58:48 380

原创 TextView文本可选中

android:textIsSelectable="true"

2017-10-11 21:48:40 3234

原创 Android Studio开发中途使用gitignore文件进行提交忽略

上回书说道,因为部分文件过大,常常会出现push失败的问题。对于整个安卓项目,需要进行push的部分其实很少,一般来说只有app文件夹和项目gradle文件等。git使用中有一个gitignore文件,可以通过在这个文件中写入所有想要忽略的文件夹和文件,这样的话被忽略的部分就不会随项目提交和push。这个文件在项目根目录下,叫做.gitignore,没有的话可以自己加上。但是如果你

2017-10-10 16:04:33 1037

原创 push was rejected by remote(因部分文件过大)(安卓)

最近项目变大之后Push到码云上的时候遇到了一个问题,如题所示,被拒绝,使用命令行进行push后明白了具体原因,是因为push限制单个文件不大于100M,而我有一个bin文件大于100M了。事实上,我是不需要push这个文件的,只需要push app文件夹,也就是代码部分。其实常见的思路是在gitignore文件中将这些文件忽略掉,然而我一顿操作发现没用,这些文件还是被提交了上去。。。。

2017-10-09 23:23:44 5057

原创 Picasso清空缓存策略(如更换头像)

最近在做一个看帖类的APP,帖子显示用户头像且头像可以修改。图片加载框架用的是Picasso,它自带缓存功能,默认情况下加载网络图片时会先从缓存中找,这可以大大节省加载时间。但是因为用户可以更改头像,更改头像后图片的地址是不变的,所以要求每次打开APP看帖的时候看到的就是最新的头像,刚开始我在Picasso的链式语法中加入这两行: .memoryPolicy(MemoryPolicy.NO_C

2017-10-01 19:03:24 1338

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除