Android 将Snackbar连接到RecyclerView 我创建了一个典型的聊天应用程序,中间有一个RealvReVIEW和底部的消息控件。p>
我想显示一个绑定到RecyclerView的snackbar(因此显示在RecyclerView的底部),以便它显示在消息传递控件的上方,而不是屏幕的最底部 当我设置Android 将Snackbar连接到RecyclerView 我创建了一个典型的聊天应用程序,中间有一个RealvReVIEW和底部的消息控件。p>,android,android-layout,Android,Android Layout,我想显示一个绑定到RecyclerView的snackbar(因此显示在RecyclerView的底部),以便它显示在消息传递控件的上方,而不是屏幕的最底部 当我设置snackbarChat=Snackbar.make(findViewById(R.id.recycler\u视图),“”时,Snackbar.LENGTH\u不确定)snackbar仍然显示在屏幕底部(并覆盖消息传递控件),而不是像预期的那样显示在RecyclerView的底部 问题:如何将snackbar放入回收视图屏幕 谢谢你
snackbarChat=Snackbar.make(findViewById(R.id.recycler\u视图),“”时,Snackbar.LENGTH\u不确定)代码>snackbar仍然显示在屏幕底部(并覆盖消息传递控件),而不是像预期的那样显示在RecyclerView的底部
问题:如何将snackbar放入回收视图屏幕
谢谢你的帮助 来自make()
的文档:
Snackbar将尝试并找到一个父视图,以从给定给视图的值中保存Snackbar的视图。Snackbar将沿着视图树向上走,试图找到合适的父视图,该父视图定义为坐标布局
或窗口装饰的内容视图,以先到者为准
因此,当您传递findviewbyd(R.id.recycler\u视图)
的结果时,make()
调用将查看RecyclerView的父视图和父视图的父视图,依此类推。。。直到它找到一个协调器布局
或进入主内容视图
我打赌你会进入下半场
一种简单的修复方法是将您的回收视图
包装在协调布局中
。如果不查看布局XML,我无法确切地说如何做到这一点,但您可能只是想
<android.support.design.widget.CoordinatorLayout
android:layout_width="whatever you had on the recyclerview"
android:layout_height="whatever you had on the recyclerview"
...>
<android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
.../>
</android.support.design.widget.CoordinatorLayout>