協議傳值
阿新 • • 發佈:2019-02-20
Controller1:
@interface FiveViewController ()<SixViewControllerDelegate>
- (IBAction)btnClick:(id)sender {
SixViewController *six = [[SixViewControlleralloc]init];
six.delegate =self;
[self.navigationControllerpushViewController:six animated:YES];
}
-(void)changeValue:(NSString
{
self.DMLabel.text = value;
}
Controller2:/**
定義協議,用來實現傳值代理
*/
@protocol SixViewControllerDelegate <NSObject>
/**
此方為必須實現的協議方法,用來傳值
*/
- (void)changeValue:(NSString *)value;
/**
此處利用協議來定義代理
*/
@property (nonatomic,unsafe_unretained) id<SixViewControllerDelegate> delegate;
- (IBAction)btnClick:(id)sender {
// 傳送代理,並把文字框中的值傳過去
[self.delegatechangeValue:self.DMTextField.text];
[self.navigationControllerpopViewControllerAnimated:YES];
}