UIButton
中有UITextField
和UITableViewCell
。轻扫UIButton
或UITextField
时,删除按钮不会出现。我在SO和Google上搜索答案,有类似的问题Swipe left gestures over UITextField,但没有正确答案。
我在iOS 8上遇到了这个问题。
修改
设置self.tableView.panGestureRecognizer.delaysTouchesBegan = YES;
后,它适用于UITextField
的单元格。但是,当我从UIButton
开始拖动时,删除按钮显示并且UIButton
被解雇,我不希望UIButton
被解雇。
答案 0 :(得分:1)
我不知道如何阻止UIButton
首先触发,但UITableViewCell
具有属性showingDeleteConfirmation
,可用于检查删除按钮是否正在所示。我所做的是在UIButton
TouchUpInside
的{{1}}操作中查看此内容,如下所示
- (void)buttonPressed:(id)sender
{
if (!self.showingDeleteConfirmation) {
// Handle button press
}
}
(此示例来自UITableViewCell
子类,因此它使用self
来访问该属性。)
这,除了
tableView.panGestureRecognizer.delaysTouchesBegan = YES;
您已经拥有,可以正确识别滑动并且不执行按钮操作。