UIButton&UITextField将阻止UITableViewCell被刷卡删除
UITableViewCell
有UIButton
和UITextField
。 删除button 当我滑过UIButton
或UITextField
时不会出现。 我search的SO和谷歌的答案,有一个类似的问题滑动左手势UITextField ,但没有正确的答案。
我在iOS 8上遇到了这个问题。
编辑后设置self.tableView.panGestureRecognizer.delaysTouchesBegan = YES;
,它适用于具有UITextField
单元格。 但是,当我从UIButton
拖动开始,删除button显示和UIButton
解雇,我不希望UIButton
被解雇。
我不知道如何防止UIButton
在第一时间发射,但UITableViewCell
的属性showingDeleteConfirmation
可以用来检查是否显示删除button。 我所做的是在TouchUpInside
的UIButton
动作中检查这个,就像这样
- (void)buttonPressed:(id)sender { if (!self.showingDeleteConfirmation) { // Handle button press } }
(这个例子来自UITableViewCell
子类,所以它使用self
来访问属性。)
这,除了
tableView.panGestureRecognizer.delaysTouchesBegan = YES;
你已经有了,可以正确识别滑动并且不执行button动作。
- NSInvalidArgumentException原因:“Storyboard不包含带有标识符”CenterViewController“的视图控制器
- 导致UISearchBar崩溃的自定义UITableViewCell