我正在尝试在用户更改UISwitch的状态时打开/关闭。
例如
- (IBAction)toggleSwitch:(id)sender {
ChannelsTableViewCell* cell = (ChannelsTableViewCell *)[sender superview].superview;
NSIndexPath *indexPath = [self.tableView indexPathForCell:cell];
if (cell.localSwitch.on)
{
NSLog(@"On");
}
}
当我运行它时会抛出错误。
2014-04-24 11:33:41.462 HRApp [3258:60b] - [UITableViewCellScrollView localTitle]:无法识别的选择器发送到实例0x19354410 2014-04-24 11:33:41.467 HRApp [3258:60b] ***由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [UITableViewCellScrollView localTitle]:无法识别的选择器发送到实例0x19354410'
答案 0 :(得分:3)
如果您将IBAction
连接到交换机,则无需让UITableViewCell
检查交换机的值。您可以使用IBAction
中的sender参数。因此:
- (IBAction)toggleSwitch:(id)sender {
UISwitch *switch = (UISwitch *)sender;
if (switch.on)
{
NSLog(@"On");
}
}
如果您需要找到显示indexPath
的{{1}},可以添加以下内容:
UISwitch