UITableView didSelectRowAtIndexPath

时间:2014-10-27 10:42:28

标签: ios uitableview

我有一个包含五个单元格的UITableView。每个单元格都有一个标签和一个图像。现在使用didSelectRowAtIndexPath,当我单击任何单元格时,将出现一个新视图,其中包含单击的单元格中的标签和图像。代码是:

OpenMessageViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"OpenMessageVC"];
    [self.navigationController pushViewController:controller animated:YES];

OpenMessageViewController是我在单击一个单元格时出现的新视图。 我在故事板中的OpenMessageViewController中添加了标签和图像。如何将OpenMessageViewController的标签文本和图像更改为单击单元格中的文本和图像。 谢谢

1 个答案:

答案 0 :(得分:0)

我没有把你的代码放在Xcode项目中,但你不能做这样的事情来传递图像和文字吗?

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
// Get the tapped cell
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];

// Configure the destination VC
UIImageView *myImageView = (UIImageView *)[cell viewWithTag:10]; // Set tag 10 to the UIImageView in your cell
UILabel *myLabel = (UILabel *)[cell viewWithTag:20]; // Set tag 20 to the UILabel in your cell
controller.imageView.image = myImageView.image;
controller.theLabel.text = myLabel.text;

// Navigate
[self performSegueWithIdentifier:@"mySegue" sender:self];
}

请记住在IB中连接两个ViewControllers。然后你必须有一个名为theLabel的标签和一个名为imageView的imageView,目的地ViewController连接到一个插座。 (随意更改名称)