我的UITableViewController的名称为SettingsViewController。它包含一个链接到UITableViewCell的属性,称为signOutCell。
为什么这不能识别用户是否触摸了signOutCell?它在SettingsViewController.m里面吗?
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
if ([touches containsObject:signOutCell])
{
[self triggerActionSheetConfirmation];
}
}
我放了
NSLog(@"Received touch");
在if语句之前,但从未被调用。在此TableViewController中触摸任何东西时,touchesBegan:withEvent:永远不会被调用吗?
如何在UITableViewCell中简单点击以调用方法triggerActionSheetConfirmation?
最佳答案
使用UITableViewDelegate
方法tableView:didDeselectRowAtIndexPath:
。在该方法中,通过UITableView
方法cellForRowAtIndexPath
获取单击的行的单元格。然后,使用if
语句将单元格与您创建的UITableView
插座属性进行比较。然后,如果评估得出该出口,则运行您的方法。
关于iphone - 为什么我的UITableView无法识别UITableViewCell内部的触摸?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9813417/