我有一個從Storyboard segue調用的登錄視圖控制器;當用戶正確登錄時,我需要關閉當前的ViewController,返回調用者ViewController並隱藏登錄按鈕。如何從被調用的ViewController修改發件人ViewController?
我該如何引用發件人ViewController來隱藏按鈕?我是否必須將「根」ViewController的實例傳遞給登錄名,還是有另一種方式?
我有一個從Storyboard segue調用的登錄視圖控制器;當用戶正確登錄時,我需要關閉當前的ViewController,返回調用者ViewController並隱藏登錄按鈕。如何從被調用的ViewController修改發件人ViewController?
我該如何引用發件人ViewController來隱藏按鈕?我是否必須將「根」ViewController的實例傳遞給登錄名,還是有另一種方式?
使用代表團。
爲了您DetaliViewControler創建一個協議,就像
@protocol DetailViewControllerDelegate <NSObject>
-(void)successFullyLoggedInOnController:(DetailViewController *) controller;
@end
添加一個委託聲明DetailViewController界面像
@property (weak) id<DetailViewControllerDelegate> delegate;
充分利用MasterViewController符合協議。
-(void)successFullyLoggedInOnController:(DetailViewController *) controller
{
[self.loginButton setHidden:YES];
}
現在MasterViewController顯示DetailViewController之前,能源部像
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"DetailViewSegue"]) {
DetailViewController *vc = segue.destinationViewController;
vc.delegate = self;
}
}
在DetailViewController曾經在那裏進入和驗證呼叫
[self.delegate successFullyLoggedInOnController:self];
憑證和罷免DetailViewController
您應該使用委派。用另一個代表的按鈕製作VC。登錄成功後,您將關閉VC並調用委託方法來隱藏該按鈕。
非常感謝,它運行完美 – Cris