RecyclerView的输入法弹框滚动(类似ListView的transcriptMode)
有个类似QQ的聊天界面,下方是 输入框,或者表情面板,上面是一个消息展示的recyclerView。
原先使用的ListView实现消息列表(给activiy 设置 android:windowSoftInputMode="adjustResize", 给 ListView设置android:transcriptMode="normal"),输入框获取焦点,有输入法弹出时,消息列表会挤压到上部,可见的list最后一条记录为之前未弹出输入法时的最后一条记录(可见的list最后一条记录,不一定是整个数据集合的最后一条数据,可能有滑动查看)
现在换成 RecyclerView后,不再有这个属性。 设置 RecyclerView#setStackFromEnd(true)时,当消息超过一屏,和之前listview效果一致;消息不足一屏,列表头部会出现大片空白部分(预期空白部分应该出现在列表下方,类似qq)。
另外,RecyclerView#setReverseLayout(true),可以倒置整个列表的排列,解决消息不足一屏时的空白位置的问题,但是这样需要对数据源进行倒序排列,且滑动定位等会出现问题,改动较大,有没有其他可以处理这种问题的方案?