将数据传递回上一个控制器

Tom*_*Tom 16 controller objective-c storyboard ios5

我在故事板中有两个控制器,嵌入在NavigationController中,并且有一个segue可以在这些控制器之间切换.

通过实现prepareForSegue,将数据从第一个控制器传递到第二个控制器非常简单,并使用segue.destinationViewController设置第二个控制器的属性.

我应该将数据传回第二个控制器到前一个控制器.我用Google搜索,但我没有找到任何简单但有效的代码来演示它.

你会这么善良,给我一个关于最佳方法的简单样本吗?

提前致谢!

agi*_*ion 24

在第二个视图控制器类中,您可以创建协议和委托.第一个视图控制器将自己设置为prepareForSegue中的委托并实现协议方法.然后,第二个视图控制器将调用方法将数据传递回第一个视图控制器.以下是我的一个项目中的一些代码示例.

@protocol TableSelectorDelegate <NSObject>

@optional
- (void)didMakeSelection:(id)selectionString forType:(NSString *)dataTitle;
- (void)didAddNewValue:(NSString *)newValue forType:(NSString *)dataTitle;

@end

@interface TableSelectorViewController : UITableViewController  

@property (nonatomic, weak) id<TableSelectorDelegate> delegate;

@end
Run Code Online (Sandbox Code Playgroud)