0

在点击表格单元格后,我想将 id表格视图 ( TableViewController) 传递到另一个视图 ( )。ViewController我已经为 ViewController 声明了一个故事板 ID“ViewController”

这是 TableViewController.m

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

      UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard"   bundle: nil];
      UIViewController *viewController = [storyboard   instantiateViewControllerWithIdentifier:@"ViewController"];
      viewController.id=@"test";
      [self.navigationController pushViewController:viewController animated:YES];

}

这是 ViewController.h

@property (nonatomic) NSString *id;

视图控制器.m

- (void)viewDidLoad{
       id= [[NSString alloc] init];
}

但该语句viewController.id=@"test"; 出现语法错误。

4

2 回答 2

4

id是 Objective-C 中的保留字。不要命名任何变量或属性id。将其重命名为其他名称。

此外,您的viewController变量被声明为UIViewController. 中没有id财产UIViewController。将类型更改为viewController它的实际类型(ViewController?)。

ViewController *viewController = (ViewController *)[storyboard   instantiateViewControllerWithIdentifier:@"ViewController"];
于 2013-05-18T17:29:02.890 回答
1

检查下面的链接,为初学者介绍如何在 UITableViewController 之间传递数据到另一个视图的这些基础知识。

Storyboards Segue 教程:在视图控制器之间传递数据

顺便说一句,我认为您不能使用“id”作为您的属性名称。

于 2013-05-18T17:30:59.270 回答