核心理念 建立思维的秩序,减少思维的混乱度-精神熵: 一切皆大纲,实现结构化思考和渐进式写作:为什么说 Workflowy 重塑了我的知识管理 ...
原理 开启一个异步线程,每过一段时间(比如100ms)就去获取主线程的栈帧如果当前栈帧和上一个栈帧一样,就说明主线程阻塞了,就打印当前的栈帧 注...
案例场景 当接口的方法过多,而我们只需要其中一个方法时,例如TextView.addTextChangedListener,我们只需要它的onT...
一个简单的响应式用例 背景 今天在重构网络库初始化的时候,发现每次用户cookie变化,都会重新初始化网络库 究其原因,是因为网络库的网络拦截器...
1.Flutter的UI开发【1+1+0.5=2.5】轮播图和自定义指示器【耗时1天】布局越界问题,布局的宽度高度无效等问题【耗时1天】Flut...
使用示例 实现机制:泛型方法+高阶函数 它有默认的错误处理,也可以自定义错误处理,默认的话,只是打印一下错误,可以自己重写errorHandle...
使用拓展方法+内联函数前 使用拓展方法+内联函数后 实现原理 看上面的简化写法,你一定会有两个疑问: viewPager哪来的addListen...
像对象一样操作SP 一、使用示例 1.在PreferenceManager中添加需要存进SP的字段 2.存值 3.取值 二、原理 1.使用属性代...
以前,我们参考google的官方示例实现MVP,需要定义一个Contract契约类,View和Presenter之间都通过契约类来进行通讯。 例...