才开始想在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
设置成为头布局了,难怪怎么也不显示。
在RecyclerView
和 emptyView
外又套了一层FrameLayout
结束了这个无语的Bug。