背景
领导在会议上说我们的 IM 聊天页面的用户体验不太好,尤其是下拉加载更多会跳动,让我优化一下。之前还确实没有注意到这一点,现场拿出手机和微信做对比,不比不知道,一比还真是发现了问题。微信的聊天页面下拉刷新之后很平稳的显示出了新的数据,非常的顺滑,没有一丝的抖动,不愧是天花板哈。再看我们的聊天页,刷新之后会回弹,新数据没有立马显示出来,得再往下拉一下才能出来。这确实得优化一下,给用户大大们带来更好的体验是我们不懈的追求~~~
分析
我们的聊天页面就是一个 UITableView,刷新组件用的是 MJ 的 MJRefresh,通常在一个常规的 tableView 页面,默认下拉刷新的时候是会回弹的,但是上拉加载更多的时候就不用。我们在聊天页面是不需要上拉加载更多的,但是我们需要在下拉的时候实现加载更多的功能,还不能让他回弹。我有下几点想法:
- 反转 tableView,把 tableView 首尾调换个位置(相当于把手机倒着拿);
- 修改刷新组件源码;
- 自己造一个刷新的轮子;
看了以上几种方案,应该有人会说,听君一席话,如听君一席话呀!不瞒您说,我也是这样觉的。首先反转 tableView 后续会有什么问题,我想不用尝试就知道了,太麻烦了。修改源码或者自己造一个轮子呢?耗时,成本大,还不一定好用。。。。栓Q!那有没有简单好用的办法呢?都写出来了那就一定是有的。
在我们刚刚进入到聊天页面的时候,显示的数据不是