在 Cell 中有一个播放语音的图片,点击之后用uiimage通过animationImages播放几张图片,但是当 Cell 滚出屏幕之外的时候,uiimage就不动了,不知是复用覆盖了还是怎么?求大神给个解决思路啊
终于知道了,我是这样做的,
(void) playVoiceAnimation;//播放语音播放动画
(void) stopVoiceAnimation;
上面2个方法写在 cell 里,用于开始、停止图片动画,Cell 有一个标记,点击语音的时候用 block 传回 Cell 标识(rowIdentifier,创建 Cell 时,cell.rowIdentifier = indexPath.row;)和音频文件路径给聊天 VC
在聊天 VC 中收到后播放音频文件,并缓存cell.rowIdentifier给_rowPlayVoiceAnimationIdentifier,然后遍历visibleCells,如果 Cell 标识(row) 和缓存的一样,则调用 Cell playVoiceAnimation方法
音频播放结束后调用,同上,调用 Cell stopVoiceAnimation方法
滚动时处理:
//cell 将要显示出来的时候,如果是正在播放录音文件的 Cell,那么执行Cell播放录音动画
if (((ACChatTableViewCell *)cell).rowIdentifier == _rowPlayVoiceAnimationIdentifier) {
[((ACChatTableViewCell *)cell) startVoiceAnimation];
}
有点乱!!!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。