gpt4 book ai didi

iphone - IOS 7 - 如何从放置在 UITableViewCell 中的按钮获取 indexPath

转载 作者:IT王子 更新时间:2023-10-29 07:49:32 25 4
gpt4 key购买 nike

我以编程方式创建了一个 UITableView 并将 UISwitch 添加到它的单元格附件 View 中。

这是我在 cellForRowAtIndexPath 方法中的单元格附件 View 中的 UISwitch 代码。

UISwitch *accessorySwitch = [[UISwitch alloc]initWithFrame:CGRectZero];
[accessorySwitch setOn:NO animated:YES];
[accessorySwitch addTarget:self action:@selector(changeSwitch:) forControlEvents:UIControlEventValueChanged];
cell.accessoryView = accessorySwitch;

这是点击按钮后调用的方法。

- (void)changeSwitch:(UISwitch *)sender{

UITableViewCell *cell = (UITableViewCell *)[sender superview];

NSIndexPath *indexPath = [self.filterTableView indexPathForCell:cell];
NSLog(@"%ld",(long)indexPath);

……………. My other code…….
}

我能够在 iOS 6 中打印索引路径值但在 iOS 7 中它打印 nil,

我是否在 iOS 7 中遗漏了任何内容,或者有其他方法可以在 iOS 7 中获取 indexPath

谢谢,阿伦。

最佳答案

NSLog(@"%ld",(long)indexPath);是错误的这会打印indexPath的指针地址

尝试使用以下代码

CGPoint center= sender.center; 
CGPoint rootViewPoint = [sender.superview convertPoint:center toView:self.filterTableView];
NSIndexPath *indexPath = [self.filterTableView indexPathForRowAtPoint:rootViewPoint];
NSLog(@"%@",indexPath);

关于iphone - IOS 7 - 如何从放置在 UITableViewCell 中的按钮获取 indexPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19000356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com