您可以为此使用委托或NSNotification。
代表。
让你有两个视图控制器。一个是ViewController和其他NextViewController,你想从NextViewController注销并清除ViewController中的文本。
步骤:在NextViewController.h
#import <UIKit/UIKit.h>
@protocol clearTextField <NSObject>
-(void)clearTextFieldInPreviousController: (NSString *)string;
@end
@interface NextViewController : UIViewController
@property (assign,nonatomic) id delegate;
@end
在nextViewController.m
- (IBAction)loginButtonAction:(id)sender
{
[_delegate clearTextFieldInPreviousController:@""];
[self.navigationController popToViewController:
[self.navigationController.viewControllers
objectAtIndex:self.navigationController.viewControllers.count -2]
animated:YES];
}
,并在您ViewController.m
-(void)clearTextFieldInPreviousController: (NSString *)string{
NSLog(@"Fired");
self.label.text [email protected]"";
}
//注意才去下一个控制器。你将不得不设置委托。
– (IBAction)goNextButtonAction:(id)sender {
NextViewController *acontollerobject=[self.storyboard instantiateViewControllerWithIdentifier:@"NVCSID"];
acontollerobject.delegate=self; // protocol listener
[self.navigationController pushViewController:acontollerobject animated:YES];
}
你可以访问这个链接Demo Example
感谢金正日会尽力的。 – Megha