在堆叠视图之间传递数据

Obj*_*rog 0 iphone xcode uiview navigationcontroller ios

在我的应用程序中,我有几个视图..并且使用导航控制器推送和弹出其中一些视图.在某些视图中,我有一个表视图,其中每个单元格都是一个视图本身,因此当选择单元格时,将执行以下代码:

DetailView *detailViewController = [[Detailview alloc] initWithNibName:@"Detailview" bundle:nil];
    [self.navigationController pushViewController:detailViewController animated:YES];
    [detailViewController release];
Run Code Online (Sandbox Code Playgroud)

在详细视图中,当单击特定按钮时(例如,返回/取消按钮),将执行此代码:

[self.navigationController popViewControllerAnimated:YES];
Run Code Online (Sandbox Code Playgroud)

我想要的是将数据从detailview传递到它之前的视图(初始化它的视图).到目前为止,我已经实现了一个名为"Globals.h"的类,其中我将要传递的数据放在其中,并在这些数据变量上使用"extern"以确保它对于许多类来说是全局的,并且它有效正常.但我不认为这是适当的方式.还有其他好办法吗?

提前致谢 :)

Eri*_*k B 7

解决它的一个简单方法是:

DetailView *detailViewController = [[Detailview alloc] initWithNibName:@"Detailview" bundle:nil];
detailViewController.controller = self;
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViewController release];
Run Code Online (Sandbox Code Playgroud)

然后在详细视图中:

self.controller.data = data;
[self.navigationController popViewControllerAnimated:YES];
Run Code Online (Sandbox Code Playgroud)

我希望你知道如何创建属性,否则请给我发表评论.