首页 > 技术文章 > 点评点赞功能的基本实现------个人观点

wei1228565493 2015-07-31 20:56 原文

   对于做这个功能的时候,我认为很简单,结果错误百出,我认为是notifyDataSetChanged()方法调用失败,结果打印日志,发现该方法被调用了。

然后我很费解,既然已经调用,为何不刷新出新的数据呢????最后的最后,当然是问度娘,度娘她告诉我,关于点赞功能的实现,她知道的其实并

不多,而点赞功能的效果动画确很精通。然后我尝试了几种方法:

  1:在onResume()方法中重新绑定adapter,并调用notifyDataSetChanged()方法,结果连个鸡肋都不如,真是浪费感情。

  2:然后有寻了一个方法,让listview调用invalidateView()方法,结果我愣是没找到这个方法,我傻了。

  。。。。。。。。已崩溃。。。。。。。。。。。

  俺是打不死的小强,打着屡败屡战的口号,开始想广大猿猿们发出求助的信号,发送中。。。。。。。。。。。。。。。。。。。。。。。。。。。

耐心的等待!!!!!!!!!!滴滴滴滴。。。。这时候收到信息了,原来是修改的数据未渲染到adapter中,所以拿到的数据还是原来的数据,重新刷新

一变就可以更新数据了。然后我想了有想,想了又想。。。这种方法我也考虑过,并毕竟notifyDataSetChanged()方法是重新调用getView()方法,肯定

是修改数据啊!!!!!!!然而我灵感突显,顿时来了精神,原来是这么的回事。。。。。。想知道吗??????

  其实是我理解错了,这与我的界面设计有关那,偶滴神呐!!原来我的的设计是这样的存在,这本是个评论的界面,分为好评,中评,差评,和全部评论,也就

是在一个Activity里面放了4个fragment,每个fragment又是同样的布局,到这了,你是不是会直接写四个fragment,然后每个都要布局?????????

这样做的话你也就太呆萌了,傻傻分不清楚。我是用了一个BaseFagment获取数据,然后在用了四个fragment去继承这个BaseFagment,然后重写

BaseFagment里面的网络请求方法,只要是其中的参数根据需求自己设计吧。所以我的BaseFagment里面是一次请求,而点赞又是一次网络请求,故点赞请求

是不能想当然的改变点赞的数据滴滴滴滴!!!!!!到此你明白了些什么那??我也是非常的好奇哦!!

  知道问题出在哪了,咋就给他来个对症下药,一针见血!!!累了,容我偷懒一会,各位客观,请你们也帮我分析分析!!!!!!

推荐阅读