不知道大家是否遇到点击tableViewCell弹出提醒框的时候发现延迟问题,第一次点击的时候会正常的弹出,再点击几次他就有有延迟,一般延迟1~2秒。我以为是我判断写多了才出现的这种问题,我试了很多次发现不是我的问题。大家看下延迟(如下:)
1.gif
大家发现了吧,第一次点击是正常的,再多点击几次就出现了延迟的问题!(我的cell.selectionStyle = UITableViewCellSelectionStyleNone;)
网上看了许多资料,有的人说是runloop没有使UI即时更新。用谷歌查也没查出来什么原因。不过还好问题解决了,但是不知道什么原因。解决方法一:
typedef NS_ENUM(NSInteger, UITableViewCellSelectionStyle) {
UITableViewCellSelectionStyleNone,
UITableViewCellSelectionStyleBlue,
UITableViewCellSelectionStyleGray,
UITableViewCellSelectionStyleDefault NS_ENUM_AVAILABLE_IOS(7_0)
};
这是cell的选中风格,不选第一个就能解决了,但是好丑!
解决方法二:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[tableView deselectRowAtIndexPath:indexPath animated:NO];(不能为YES!!)
}
在点击cell的时候加上这句话,完美解决!看下对比图:
2.gif
明显的看出来延迟没有了吧!
好的,希望对大家有帮助吧!青山不改,绿水长流。