Heim > Fragen und Antworten > Hauptteil
问题描述:
我使用 RecyclerView 来做消息列表,但是在软键盘弹起时会遮挡住 RecyclerView,而不是将 RecyclerView 与输入框一起顶上去。
清单文件里的 android:windowSoftInputMode 我设置为 adjustResize没效果。试过设置为 adjustPan,但是会将 标题栏也顶出布局外面。
问:该怎样才能做到像微信那样弹出软键盘会将 RecyclerView 顶上去?
黄舟2017-04-17 18:02:17
标题栏被顶起来应该是你布局文件没写对,我需要知道你xml怎么写的,另外,还有可能其实不是被遮挡,而且RecyclerView没有滑动到最底部而已
高洛峰2017-04-17 18:02:17
对于RecyclerView来说,你需要两个配置,一是,android:windowSoftInputMode="adjustResize"
,再就是代码初始化RecyclerView的时候加上这个
LinearLayoutManager layoutManager = new LinearLayoutManager(this);
//这是重点
layoutManager.setReverseLayout(true);
mRecyclerView.setLayoutManager(layoutManager);
高洛峰2017-04-17 18:02:17
AndroidManifest设置Activity的软键盘状态 android:windowSoftInputMode="stateHidden|adjustResize"
//设置布局管理器
LinearLayoutManager mManager = new LinearLayoutManager(mContext);
mManager.setStackFromEnd(true); //关键
recyclerView.setLayoutManager(mManager);