如何通过segue将数组传递给tableviewcontroller

时间:2012-04-17 14:27:51

标签: objective-c ios arrays segue

这可能是一个基本问题,但我找不到明确的答案。 (我是iOS新手。)

这是我的故事板的快速方案: navigationcontroller - > detailviewcontroller - > tableviewcontroller

我的detailviewcontroller有3个按钮。单击时,它们从服务器解析xml并将元素放在一个数组(称为文件)中。 (到这里一切正常)。因此,在创建数组时,详细信息视图将转换为tableviewcontroller。

现在我的问题:如何传递通过该segue创建的数组,以便我可以在tableviewcontroller类中使用它来为行分配值? (我知道如何分配它们,但我不知道如何通过segue传递数组)

所以让我说我有这个代码:

if ([segue.identifier isEqualToString:@"pdfSeg"]) {

    NSMutableArray *pdfArray = [[NSMutableArray alloc]initWithArray:xmlParser.files];

    UITableViewController *tvc = [segue destinationViewController];}

如何告诉segue发送pdfArray,以便用pdf文件填充行?

非常感谢。

1 个答案:

答案 0 :(得分:3)

将数组视为控制器的模型。将其作为财产传递。另外,你真的想传递一个可变数组吗?您只是传递信息,还是期望控制器管理对阵列的更改?

所以,你要添加一个属性......

在DestinationViewController界面中,添加属性...

@property (nonatomic, strong) NSMutableArray *pdfArray;

在实现中合成它......

@synthesize pdfArray = _pdfArray;

然后,在prepareForSeque ...

中提供属性
tvc.pdfArray = pdfArray;
相关问题