1

我在 RootViewController 类中加载了一个数组(recordArray),我需要将它传递给 DetailViewController 类,以便我可以访问其中的任何变量。我可以成功传递一个值,但我不知道如何传递整个数组。

我在 DetailsViewController.h 中创建了第二个 NSMutableArray recordArray,添加了 @property 语句(带有保留),并在 DetailsViewController.m 中合成。然后我在 DetailsViewController.m 中添加了以下行

recordArray = [[NSMutableArray alloc] initWithArray:self.recordArray];

但这只是在详细视图中给了我一个空数组。

我已经阅读了一些关于此的帖子,但没有找到任何我理解足以能够实施的东西。我希望我做错了这一切....

提前感谢您的帮助。

4

2 回答 2

2

请参考这段代码:

iPhone SDK:如何将一组值从 ViewController 传递到其他 ViewController?

在那里你可以参考Satya的回答。

如果您需要更多帮助,请告诉我

编辑:

让我们假设有一个NSArray被调用的secondArray声明SecondViewController

在 SecondViewController 中定义一个方法:

-(void)setValue:(NSArray *)array
{
    secondArray = array;
}

希望这可以帮助。

于 2012-04-04T15:37:21.113 回答
0

问题在于:

recordArray = [[NSMutableArray alloc] initWithArray:self.recordArray];

您只是分配了相同的属性recordArray,这可能是nil在这一点上,您想要做的是依赖注入。所以每当你实例化你的DetailController,你可以这样做:

myDetailController.recordArray = myRecordArray

myRecordArray您要在详细视图控制器中传递或“注入”的值在哪里。

于 2012-04-04T15:33:54.923 回答