1

所以我一直在故事板中构建一个表格视图,并使用我的自定义 UITableViewCell 创建了一个外部 Nib 文件。一切都很好。但是,表格视图单元格上有一个按钮,我想通过 segue 将其连接到情节提要中的视图。现在我对这一切还是很陌生,那么如何将自定义单元格上的按钮连接到情节提要中的视图控制器?我完全错了吗?如果是这样,我将如何快速轻松地重组我的项目?如果您能提供一点解释,我将不胜感激,以便我从中学习。

感谢您的帮助,
问候,
迈克

4

1 回答 1

1

可以使用情节提要在情节提要的 UITableViewCell 内设置按钮。我以前做过类似的事情。所以,这是一个解决方案;

  • 在 UITableView 单元格中创建原型单元格并向其添加 UIButton。
  • 创建从按钮到新视图控制器的 segue,然后选择模式或推送。

现在,在 UITableViewData 数据源 cellForRowAtIndexPath;

-(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
    if(!cell){
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"];
    }
    UIButton *button = ((UIButton*)[cell.contentView.subviews objectAtIndex:0])
    button.tag = indexPath.row;
    cell.textLabel.text = @"Hello Text"
    ;
    return cell;
}

现在,当您单击按钮时,您的 prepareForSegue: 会被调用。

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    if([segue.identifier isEqualToString:@"identifier"]){
        UIButton *button = (UIButton*)sender;
        NewViewController *viewController = [segue destinationViewController];
       if(button.tag == 1)
          viewController.someobject = ...
       else 
          viewController.somobject = ...
    }
}

这应该有效。

于 2012-11-27T21:12:34.823 回答