CodeView-Android icon indicating copy to clipboard operation
CodeView-Android copied to clipboard

Fix recyclerview fill all items

Open LinZong opened this issue 3 years ago • 0 comments

Pass MeasureSpec.UNSPECIFIED mode to child RecyclerView for providing a virtual 'infinite' vertical space will cause LinearLayoutManager try to 'fill' remaining space using ALL items in adapter, which may let main thread running measures for a long time. Just provide an 'infinite' horizontal space for long-line code is enough, then layout manager and touch event handle methods in RecyclerView can handle vertical scrolling perfectly. Can also fix missing velocity in code panel.

Flame chart showing such issue: image

Screen records (Xiaomi MIX2S, Qualcomm 845, should not appear a loading holder for just a 370+ lines log file.):

out

LinZong avatar May 05 '21 04:05 LinZong