昨天使用EmptyRecyclerView 无法正确显示emptyVIew的原因

才开始想在Adapter中的onCreateView()中判断下getItemCount() 为空的时候显示一个空布局。
但是发现如果数据为空,这个方法是不会被调用的。
如果还要继续在Adapter里实现的话,那么又要处理getItemCount()的了,这样的话逻辑非常混乱啊,而且和addHeaderView等,会出现一堆麻烦的事。所以就又回去再看一次RecyclerView必知必会

是腾讯Bugly的空布局显示的方案
RecyclerView 必知必会 http://mp.weixin.qq.com/s/CzrKotyupXbYY6EY2HP_dA

写了一个EmptyRecyclerView,然后幼稚的直接inflate了一个View,接着setEmptyView 设置进去,跑了一下发现没有效果。

看了下demo发现,原来emptyView是直接写在布局上的....这好坑啊。如果有时间的话,先写一个布局继承FrameLayout 里面完成RecylerView和EmptyView 吧。。然后再看看有什么办法可以更好的封装一下。

那么就在布局里写了EmptyView 然后流程继续走,发现还是没有效果,百思不得其解,并且将原来有数据的RecyclerView显示成了EmptyView。。尴尬。

最后查看布局的时候发现,因为父控件是UtrlaPullToRefresh (PTR) 终于明白。因为有两个布局,直接把RecyclerView设置成为头布局了,难怪怎么也不显示。

RecyclerViewemptyView外又套了一层FrameLayout 结束了这个无语的Bug。

你可能感兴趣的:(昨天使用EmptyRecyclerView 无法正确显示emptyVIew的原因)