前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >用reloadRowsAtIndexPaths刷新单个cell 跳动问题

用reloadRowsAtIndexPaths刷新单个cell 跳动问题

作者头像
honey缘木鱼
发布于 2019-07-26 03:09:39
发布于 2019-07-26 03:09:39
4.1K00
代码可运行
举报
文章被收录于专栏:娱乐心理测试娱乐心理测试
运行总次数:0
代码可运行

一个很常见的需求就是在一个cell上点赞,评论等操作时,需要刷新单个cell对象,常用的方法即为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  [self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:[NSIndexPath indexPathForRow:index inSection:0],nil] withRowAnimation:UITableViewRowAnimationNone];

仅仅这行代码会引起cell上下跳动的问题,原因是 上述刷新过程中,虽然我们已经设置UITableViewRowAnimationNone,但任然会默认添加隐式动画效果。 解决办法:去掉动画效果。

方法1:(支持iOS7+)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  [UIView performWithoutAnimation:^{
            [self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:[NSIndexPath indexPathForRow:index inSection:0],nil] withRowAnimation:UITableViewRowAnimationNone];
        }];

方法2:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[UIView animateWithDuration:0 animations:^{
    [collectionView performBatchUpdates:^{
        [collectionView reloadItemsAtIndexPaths:@[[NSIndexPath indexPathForItem:index inSection:0]]];
    } completion:nil];
}];

方法3:(仅用于iOS11以后)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[UIView setAnimationsEnabled:NO];
        [self.tableView performBatchUpdates:^{
             [self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:[NSIndexPath indexPathForRow:index inSection:0],nil] withRowAnimation:UITableViewRowAnimationNone];
        } completion:^(BOOL finished) {
            [UIView setAnimationsEnabled:YES];
        }];
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019.07.25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
编码篇-一个商品录入时的UITableCell的总结
我们都知道iOS的UITableView有自带的 左滑动删除的方式,此中方式中,不论是删除数据源,还是删除对应的Cell都是很简单的。可是有时候,产品不是通过滑动删除的,而是点击Cell上的删除图标。本文就是小结一下,商品录入时 UITableViewCell的使用。
進无尽
2018/09/12
5160
编码篇-一个商品录入时的UITableCell的总结
实践-小效果 Ⅳ
设置一个UIImageView为倒立的同等控件,设置这个UIImageView的layer的mask为一个渐变图层,效果就出来了。
進无尽
2018/09/12
6770
实践-小效果 Ⅳ
iOS-UI控件之UITableView(四)- cell数据刷新
TableView- 数据刷新 数据刷新 添加数据 删除数据 更改数据 全局刷新方法(最常用) [self.tableView reloadData]; // 屏幕上的所有可视的cell都会刷新一遍 局部刷新方法 添加数据 NSArray *indexPaths = @[ [NSIndexPath indexPathForRow:0 inSection:0], [NSIndexPath indexPathForR
用户1941540
2018/05/11
1.8K0
UITableView 刷新指定行
// 一个section刷新 NSIndexSet *indexSet = [[NSIndexSet alloc] initWithIndex:1]; [tableview reloadSections:indexSet withRowAnimation:UITableViewRowAnimationAutomatic]; //collection 相同 // 刷新某一行 NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSect
编程那点事
2023/02/25
7430
iOS中表视图(UITableView)使用详解
- (instancetype)initWithFrame:(CGRect)frame style:(UITableViewStyle)style;  
珲少
2018/08/15
1.5K0
UITableView实现QQ好友列表实战(动态插入删除Cell)
实现选择 网上大部分的教程,都是基于修改section的hearderView来实现的,但是看QQ的好友列表,style是grouped,显然不是使用section的header来处理。使用section的hearderView来实现的,十分简单,网上也有很多源码和教程,只要刷新一下dataSource然后调用就可以了。不在本次讨论的范围之内。 - (void)reloadSections:(NSIndexSet *)sections 这次我直接使用grouped的cell来做父cell,点击后展开相应的子
xferris
2018/06/01
1.3K0
iOS 集成TUIKit后撤回消息cell高度有问题?
问题现象 使用TUIKit demo在群组内发一条较长的消息后撤回消息,cell的高度没变 image.png 解决方法 image.png 代码: - (void)revokeMsg:(TUIMessageCellData *)msg { V2TIMMessage *imMsg = msg.innerMessage; if(imMsg == nil){ return; } NSInteger index = [_uiMsgs indexOfObject:m
小明同学接音视频
2020/12/25
6480
iOS 集成TUIKit后撤回消息cell高度有问题?
iOS 二级菜单(UITableView实现)「建议收藏」
首先建立一个cell的类,用于存放cell中的内容 ,继承自uitableviewcell;
全栈程序员站长
2022/06/27
1.3K0
iOS TableView多级列表
TableView多级列表的实现效果预览图 需求 TableView多级列表:分级展开或合并,逐级获取并展示其子级数据,可以设置最大的层级数,支持多选、单选、取消选择。 示例Demo:MultilevelList 思路 由需求和示意图可知,这些数据元素之间存在着一对多关系,很符合 数据结构与算法 -- 树形结构 的特征。那么,我们就用树形结构中的结点(Node)来作为存储和关联数据的模型(NodeModel)。 //每个结点信息,采用的是树状结构模型 关于树状结构不了解的可以看看
且行且珍惜_iOS
2019/03/04
2.3K0
iOS TableView多级列表
iOS面向切面的TableView-AOPTableView
这个是公司很久之前的开源项目,一个大牛写的,在项目中一直有在用,今天有空发了点时间看下如何实现,看了之后感觉挺有收获,故撰此文,分享给需要的同学。
iOSSir
2019/05/11
1.1K0
IOS开发:教你实现手机直播系统平台评论功能效果
每当有人进入房间、评论、送礼物、第一次点赞直播消息时,消息列表都要及时显示并有从下往上滑动的效果。效果如下:
布谷鸟网络科技
2019/03/13
2.1K0
IOS开发:教你实现手机直播系统平台评论功能效果
iOS开发-RAC+MVVM练手项目 图床App写在前面准备工作界面设计首页历史关于后记
前段时间闲着无聊和盆友就搞了个图床站Chevereto-Free,忽然发现居然有API提供,而且很简单,只需要一个KEY就可以
gwk_iOS
2018/08/23
1K0
iOS开发-RAC+MVVM练手项目 图床App写在前面准备工作界面设计首页历史关于后记
UITableView进阶:常用代理方法及属性1. 常用属性2. 进阶的常用代理方法
在前面的文章里面已经写过了“UITableView基础”,所以这篇里面就不再对这里面的内容进行介绍。如果有幸去瞄一眼的,可以通过文章下面的拓展链接传送门去看。& 今天重点聊一聊UITableView中经常使用到的代理方法及属性。本文不是工具箱,所以不会将所有的属性和方法都写下来噢。只是总结经常使用到的。太完整的也记不住,真的是要用的时候临时翻一下.h文件看看也行。 1. 常用属性 1.1 分隔线属性 属性名称 数值 作用 separatorStyle UITableViewCellSeparatorStyl
stanbai
2018/06/28
1.2K0
UICollectionView iOS 13以下删除动画crash
线上突发一个Top1的crash告警,场景是UICollectionView在删除的时候触发。
落影
2022/09/19
1.9K1
UICollectionView iOS 13以下删除动画crash
iOS-QQ音乐播放器的简单实现
一. QQ音乐播放器的简单实现 每个音乐播放器的实现都大致相同,个人认为难点在于歌曲播放与Slider的同步,歌词的解析与播放的同步。这些过程虽然繁琐,但是理解起来并不难。先来看看简单实现结果吧。 Q
xx_Cc
2018/05/10
2.9K0
iOS开发知识点3——键盘
莫空9081
2023/10/16
2230
iOS·下载管理第三方框架初步调研
笔者目前比较关注的点是第三方框架中,删除指定下载任务的处理逻辑。 1.FGDownloader 地址 https://github.com/Insfgg99x/FGDownloader 移除任务示例 - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
陈满iOS
2018/10/09
1K0
iOS·下载管理第三方框架初步调研
iOS开发UI篇--一个可扩展性极强的树形控件
树形控件在多列列表、多级菜单中使用比较常见,比如:国家-省份-城市 多级选择、学校-专业-班级 多级选择等等。然而IOS自带控件中并不存在树形控件,我们要在IOS开发中使用树形控件,通常需要自己扩展UITableView列表控件。 现在在这里开源一个自己写的高扩展性,高复用性的IOS树形结构控件。 支持无限极树形结构。 使用的是非递归方式。 代码简单易懂,扩展方便。 图片演示如下:
楚阳
2018/11/24
1.3K0
iOS开发UI篇--一个可扩展性极强的树形控件
iOS小经验:UITableView&UICollectionView设置单元格的默认选中状态
一个表格视图(或者宫格视图)中,当一个单元格被选中时设置彩色样式,选中其它单元格时设置灰色样式。
陈满iOS
2018/10/09
3.7K0
自定义UITableViewCell实现左滑动多菜单功能LeftSwipe
1、使用自定义UITableViewCell + UISwipeGestureRecognizer + 代理 实现;
tandaxia
2018/09/27
2.6K0
自定义UITableViewCell实现左滑动多菜单功能LeftSwipe
相关推荐
编码篇-一个商品录入时的UITableCell的总结
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验