最近在写一个项目时碰到2个vc之间部分传值得情况。现在我有个A控制器,跳到B控制器,我希望从B回到A时把一些值传给A,除了代理、通知、block外,介绍一个更简单的方法。
1、在A控制器的.h中声明我要传的值:
#import "YBGBaseViewController.h"
@interface AttentionViewController : YBGBaseViewController
@property (nonatomic, strong) NSString *titleStr;
@property (nonatomic, strong) NSString *nameStr;
@property (nonatomic, strong) NSString *isAttention;
@end
2、在B控制器的回退方法中:
- (IBAction)backButtonAction:(id)sender {
NSArray* childs = self.navigationController.childViewControllers;
if (self.attentionButton.tag == 1111) {
[childs[childs.count-2] setValue:@"1" forKey:@"isAttention"];
}else{
[childs[childs.count-2] setValue:@"0" forKey:@"isAttention"];
}
[childs[childs.count-2] setValue:self.remarkStr forKey:@"nameStr"];
[self.navigationController popViewControllerAnimated:YES];
}
就这样,回到A控制器后nameStr和isAttention就有值了!