iOS如何将选定的单元格值转换为另一个视图控制器

时间:2015-11-13 13:50:58

标签: ios objective-c uitableview segue

我有一个Uitableview单元格已成功填充字典数组。现在,我很难将选定的单元格值传递给另一个视图控制器并显示该值。

这是我的代码:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{


    NSLog(@"Tapped: %@",[[feeds objectAtIndex:indexPath.row]objectForKey:@"IncidentNumber"]);
    someProperty = [[feeds objectAtIndex:indexPath.row]objectForKey:@"IncidentNumber"];
     [self performSegueWithIdentifier:@"item" sender:self];

}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
    if ([[segue identifier] isEqualToString:@"yourSegue"])
    {

        DescriptionViewController *vc;
               vc = segue.destinationViewController;

                vc.item_pass = someProperty;
    }


}

2 个答案:

答案 0 :(得分:3)

您执行带有标识符的segue,但稍后在prepareForSegue中检查标识为 yourSegue 的segue ...

答案 1 :(得分:0)

而不是实现didSelectRowAtIndexPath将segue连接到表视图单元(而不是视图控制器)。

然后,所选单元格在sender中作为prepareForSegue参数传递,您可以使用

获取索引路径
let selectedIndexPath = tableView.indexPathForCell(sender as! UITableViewCell)!