网络编程专项聊完,进入UI与动画专项。高级岗UI方向考底层原理——RecyclerView四级缓存、DiffUtil算法、SharedElement转场、ConstraintLayout布局算法。UI面试经常让你画流程图或写关键代码,能说清楚才是真懂。今天8道题覆盖四大方向。
Q1:RecyclerView的四级缓存机制?
Scrap:屏幕可见的ViewHolder,layout期间detach→attach不重新bind。分AttachedScrap和ChangedScrap(数据变化需重新bind)。
CachedViews:刚滑出屏幕的ViewHolder(默认2个),同position直接复用不bind。超容量推到Pool。
ViewCacheExtension:自定义缓存层,大部分项目不用。
RecycledViewPool:按viewType缓存(每种默认5个),复用时需重新bind。多个RecyclerView可共享Pool。
复用顺序:Scrap → CachedViews → Extension → Pool → onCreateViewHolder。
Q2:RecyclerView滑动时的复用流程?
用户向下滑:
网硕互联帮助中心




评论前必须登录!
注册