gpt4 book ai didi

iphone - 正确抓取自定义表格单元中 UIButton 的 IndexPath.row?

转载 作者:行者123 更新时间:2023-11-29 04:38:19 25 4
gpt4 key购买 nike

我有一个表格 View ,可以从网络加载信息,并将其显示在自定义单元格中。在这些自定义单元格中,我有一个通过 Storyboard分配的按钮。

如果按下此按钮,则会触发一个方法(在 cellForRowAtIndexPath 方法中定义)

cell.viewArticleButton.action = @selector(viewArticle:); 

正是在这种方法中我遇到了麻烦。该操作有效,只是它不使用为每个单元格提供的链接(每个索引路径处的链接),而是仅使用第一行的链接,无论我点击哪一行。

-(IBAction)viewArticle:(id)sender {

NSLog(@"View Article Button Tapped");

NewsCell *cell = (NewsCell *)[self.tableView dequeueReusableCellWithIdentifier:@"NewsCell"];

NSIndexPath *indexPath = [self.tableView indexPathForCell:cell];

MWFeedItem *item = [itemsToDisplay objectAtIndex:indexPath.row];

// Open link from item.link

}

如有任何帮助,我们将不胜感激。我有一种感觉,这一行没有达到我想要的效果:

NewsCell *cell = (NewsCell *)[self.tableView dequeueReusableCellWithIdentifier:@"NewsCell"];

最佳答案

用这一行:

NewsCell *cell = (NewsCell *)[self.tableView dequeueReusableCellWithIdentifier:@"NewsCell"];

您将获得对原型(prototype)(或模板)单元格的引用。这不会让您唯一地标识 TableView 中的单元格。这只能识别从该原型(prototype)单元创建的一组单元。这就是为什么你总是坐在第一排的原因;它返回使用此原型(prototype)创建的第一个单元格。如果您只有一个具有标识符 @"NewsCell" 的单元格(其他单元格具有不同的标识符),那么您的实现就可以工作。

为了唯一标识您单击的单元格,请遵循以下线程:Detecting which UIButton was pressed in a UITableView .

关于iphone - 正确抓取自定义表格单元中 UIButton 的 IndexPath.row?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10761086/

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