これには代理人またはNSNotificationを使用できます。
代表者。
ViewControllerと2つのNextViewControllerがあり、NextViewControllerからログアウトしてViewControllerのテキストを消去したい場合は、View Controllerが2つあります。
ステップ:nextViewController.m
- (IBAction)loginButtonAction:(id)sender
{
[_delegate clearTextFieldInPreviousController:@""];
[self.navigationController popToViewController:
[self.navigationController.viewControllers
objectAtIndex:self.navigationController.viewControllers.count -2]
animated:YES];
}
でNextViewController.h
#import <UIKit/UIKit.h>
@protocol clearTextField <NSObject>
-(void)clearTextFieldInPreviousController: (NSString *)string;
@end
@interface NextViewController : UIViewController
@property (assign,nonatomic) id delegate;
@end
にし、次のコントローラに行く前に、あなたの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
ありがとうILがそれをしようとするために、あなたは、このリンクを訪問することができます。 – Megha