关于PullToRefreshExpandableListView适配器的问题
由于项目需要下拉刷新的效果,所以使用了开源控件PullToRefresh,并且用到了里面的多级列表PullToRefreshExpandableListView,但是在设置适配器的时候就遇到一个问题了,由于ExpandableListView需要设置的适配器是BaseExpandableListAdapter继承ExpandableListAdapter,
而Listview,Gridview等适配器设置的是BaseAdapter继承ListAdapter,
PullToRefreshExpandableListView在设置适配器的时候只有setAdapter(ListAdapter adapter)这个方法,如果我要把BaseExpandableListAdapter这个适配器setAdapter进去的话就编译出错,然后我试了另一种方法,自己建立一个原生的,代码如下
ExpandableListView mView = expandableListView.getRefreshableView();
然后再用mView.setAdapter();可是这样做又会出现一个问题,加载网络数据之后,列表根本没有任何数据显示,程序根本没有执行到适配器中的getGroupView()方法里面去.
求解,我该怎么做才能好的解决这个问题
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
恩,很早就解决了,不刷新是因为expand的child不会刷新,要调用setGroup方法才可以
请问解决了吗
setGroup是什么方法啊?
Adapter没有问题,数据源也没有问题,静态数据加载的话,开源显示,但是请求网络之后再加载数据就不能显示
回复
这不科学,用getRefreshableView是没问题的
回复
我也是纳闷啊,不科学啊,看源码里都有个expandlistview对象,为啥加载网络数据之后这个对象(expandableListView.getRefreshableView())就是空的了。你有类似的加载网络数据的例子不,可否借鉴下看看到底哪里出错了
回复
你有Demo么,可以发我么,我帮你看看
回复
demo的话就是我的工程代码,代码有,demo的话要抽出来
检查你的Adapter