报表控件

RecyclerView 使用水平滚动的 LinearLayoutManager 时,焦点丢失问题 :

设置 RecyclerView 的 LayoutManager 为 LinearLayoutManager ( LinearLayoutManager.HORIZONTAL ),并且 ItemView 里面含有 EditText 。当位置为第三或以上的 ItemView 中的 EditText 获得焦点时, RecyclerView 会自动滚动到第一个 ItemView 的位置。

当改为 LinearLayoutManager.VERTICAL 时,不会出现以上问题。
终于解决,只要继承 LinearLayoutManager ,重写其中的 requestChildRectangleOnScreen 方法(有两个方法),默认返回 false 就 ok 了。

参考