- 博客(4)
- 收藏
- 关注
原创 Glide源码浅析
以下glide源码基于库上最新的4.11版本,以下很多代码没有写中间的层层调用,因为层级太多了,感兴趣的可以自己通过debugu模式或者查看源码去发现。上一篇文章说到图片缓存的LRU的原理分析,并简单的说了下glide的使用,今天就开门见山,先看最简单的使用示例: Glide.with(this) .load(url).diskCacheStrategy(DiskCacheStrategy.ALL) .error(R.drawable.icon).placeholder(R.drawab.
2020-12-10 17:05:29
305
原创 Handler基础运用及源码分析
前言众所周知,因为android平台不允许在子线程中更新ui,那么如何在子线程和主线程中通信呢?聪明的google工程师创造了handler来解决这一问题;今天就详细介绍下handler的使用及其原理:基础使用首先,handler的一个基础使用方法如下:new Thread(){ @Override public void run() { super.run(); //需要先准备一个loo
2020-12-08 13:41:28
128
原创 Toolbar 的使用注意事项
最近在开发中,需要使用到toolbar,来代替陈旧的actionbar。因为之前没用过这玩意,使用 时候 遇到了很多的坑:toolbar下面的 relativelayout 无法显示出来:<android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layo
2017-03-13 14:22:03
457
原创 关于volatile修饰符的一知半解
最近做项目的时候,有这么一个需求,让cpu跑到90%使用率 我的思路是,开启多个线程,让每个线程执行无限循环计算。这个方法证明是可行的,但是有个问题是,如何控制cpu的使用率,换言之,如何在需要时降低cpu负载。 我想到的是用boolean型变量控制它(比较粗暴。。),用这个变量控制是否执行无限循环计算。 然后就遇到bug了:在需要停止的时候,线程基本上都停不下来。后期通过同事的帮助,找到问题
2016-08-29 13:09:32
401
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人