最近在项目中遇到这样的问题,有时候会双击到cell导致跳转两次,有时也可能把下一个页面的事件给响应了。 思考良久,相出这样一个解决方法。
首先定义一个BOOL类型来判断是否点击了第一次
@property (nonatomic, assign) BOOL isSelect;
然后再点击事件中这样写
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
//防止重复点击
if (self.isSelect == false) {
self.isSelect = true;
//在延时方法中将isSelect更改为false
[self performSelector:@selector(repeatDelay) withObject:nil afterDelay:0.5f];
// 在下面实现点击cell需要实现的逻辑就可以了
}
- (void)repeatDelay{
self.isSelect = false;
}
一个努力的iOS初学者。
欢迎大家前来指教!
网友评论