前言 Window 表示一个窗口的概念,Android中所有的视图都是通过Window来呈现的,不管是Activity、Dialog、还是Toast,它们的视图实际上都是附加...
简介 RecyclerView在24.2.0版本中新增了SnapHelper这个辅助类,用于辅助RecyclerView在滚动结束时将Item对齐到某个位置。特别是列表横向滑...
Android窗口机制系列 Android窗口机制(一)初识Android的窗口结构Android窗口机制(二)Window,PhoneWindow,DecorView,se...
一、认识CoordinatorLayout CoordinatorLayout作为support:design库里的核心控件,在它出现之前,要实现View之间嵌套滑动等交互操...
前言 最近产品提了个需求,要把商品列表做成类似淘宝的样式 一般遇到这种需求,我们首先会想到的是,拦截TouchEvent,然后自己来处理滑动,这种方法虽然行得通,但是代码写起...
@Android小码农_ 这里说的是如果复用的是 mCachedViews 中的 ViewHolder 的话,是不会调用 onbindViewholder 方法的,因为是根据 position 来进行复用的,不用重新 bind 数据
RecyclerView缓存原理及优化方向前沿 Android新增的Recyclerview主要用于代替ListView。Recyclerview可扩展性强。 可以通过LayoutManager形成线性(横向与竖向)...
如果唤醒的是生产者线程,判断临界区满,依旧会调用await(),此时所有的线程都在等待
Java 实现生产者和消费者的三种方法Java 实现生产者和消费者的三种方法 生产者消费者模型是我们讨论同步问题里面必须要学习的,生产者和消费者公用一块临界区域,生产者往临界区域里面添加产品,而消费者则从临界区域...
Koin是一个轻量级的依赖注入组件,相比dagger它更容易使用,学习。上手更容易。现在已经升级到2.0版本,增加了更多特性。 集成 注册module: androidLog...
一个 Task 是 Gradle 里项目构建的原子执行单元,Gradle 通过将一个个Task串联起来完成具体的构建任务,每个 Task 都属于一个 Project。关于 T...
自定义View是绘制文本有三类方法 其中drawText()最常用,drawPosText ()是根据一个个坐标点指定文字位置,drawTextOnPath ()是根据路径绘...
面试个把月,仿佛被否定了毕业以来的各种观念 前言 这不是一篇面经,面经的知识点已梳理到 gitbook.dasu.fun 这只是一篇面试之后的感想 因为在这差不多一个月的时间...
本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 最近打算花点精力来研究 RecyclerView 这个控件架构和原理,对我来说,难度很大,我不清楚最后能不...
努力的人,应该像好色那样好学 做Android开发的同学,对Gradle肯定不陌生,我们用它配置、构建工程,可能还会开发插件来促进我们的开发,我们必须了解Gradle,而不仅...
jdk8中,采用多线程扩容。整个扩容过程,通过CAS设置sizeCtl,transferIndex等变量协调多个线程进行并发扩容。 扩容相关的属性 nextTable 扩容期...