0

我有一个带有一个按钮和一个 uilabel 的自定义 TableViewCell。实际上 mi 在哪里处理这个下载事件以及如何处理?在此处输入图像描述

这是我的自定义单元格。我试图这样处理但得到了错误

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-    [downloadPageCell downloadSong:]: unrecognized selector sent to instance 0x94b1490'
*** First throw call stack:

我的代码在这里

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
  {
  downloadPageCell *newCell = nil;

  newCell = [tableView dequeueReusableCellWithIdentifier:identifier];

   if(newCell == nil)
   {
     NSLog(@"newCell ===================");
     NSArray *nibViews = [[NSBundle mainBundle] loadNibNamed:@"downloadPageCell" owner:self options:nil];
     newCell  = [ nibViews lastObject];
  }

  newCell.titleText.text=[URLTitle objectAtIndex:indexPath.row];

    [newCell.downloadButton addTarget:self action:@selector(DOWNLOAD:) forControlEvents:UIControlStateNormal];

return newCell;
}

处理来自单元格的按钮事件的真正代码是什么?

编辑

   -(void)downloadButtonPressed:(UIButton*)sender
 {
   NSLog(@"download button pressed");

 }
4

1 回答 1

1

您可以通过以下方式为每个按钮分配标签

newCell.downloadButton.tag=cell.indexPath.row

&在行动中,您可以找到按钮标签按下了哪个按钮,并对所有按钮进行不同的操作。您可以使用以下方法找到按钮。

UIButton *btn1 = (UIButton *)sender;

if(btn1.tag==1) {
  // call action for that first cell button
}

等等。

于 2012-05-21T12:02:01.387 回答