gpt4 book ai didi

ios - 无法访问 tableview 属性以获取在自定义单元格中单击的按钮的索引

转载 作者:行者123 更新时间:2023-11-28 20:08:05 24 4
gpt4 key购买 nike

我已经创建了一个自定义表格单元格应用程序。每个单元格都包含按钮。我在 stackoverflow 上发现,找出第 1 行中的按钮是否被单击或第 2 行中的按钮是否被单击的最佳方法是使用此方法

CGPoint hitPoint = [sender convertPoint:CGPointZero toView:self.tableView]; 
NSIndexPath *hitIndex = [self.tableView indexPathForRowAtPoint:hitPoint];

但是我不能使用它,因为我在 self.tableView 中没有收到错误。

这是因为我没有使用 UItableviewcontroller,而是使用 UIViewcontroller 并实现了 tableviewdelegate 和 tableviewdatasource。并且 viewcontroller 没有任何属性 tableview。

我无法将 UIViewcontroller 更改为 UItableViewcontroller,因为在代码中的任何地方我都在使用文件所有者推送 View Controller

那么我怎样才能摆脱 self.tableview 错误

最佳答案

我的建议是在创建自定义单元格对象时将 indexPath.row 值保留在正确的位置。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

//Your cell creation logic here.

//Set indexpath in the custom cell.
cell.parentIndexPath = indexPath;

return cell;
}

当按钮被点击时,您可以在自定义单元格对象中检查它:

-(IBAction) buttonClicked: (id) sender {
NSLog(@"User clicked on index path %@", self.parentIndexPath);

}

您必须在自定义单元格标题 (.h) 文件中声明 parentIndexPath。

@property (nonatomic, strong) NSIndexPath *parentIndexPath;

关于ios - 无法访问 tableview 属性以获取在自定义单元格中单击的按钮的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21310154/

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