MainViewControllerで Button を宣言したので、ユーザーがログインするときにボタンを表示する必要がありますself.mybutton.hidden = FALSE;
が、私の ProfileViewController には、ボタンを再度非表示にする必要があるログアウト ボタンがあります。self.mybutton.hidden = TRUE;
ビュー間で通信するための最良の方法はどれですか?
ストーリーボードを使用している場合は、prepareForSegue 関数で任意の情報を渡すことができます。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:...]) {
MyViewController *controller = (MyViewController *segue.destinationViewController;
controller.myProperty1 = ...;
controller.myProperty2 = ...;
}
}
NSUserDefaults は、あまり考えなくても簡単に解決できます。その中に特定の BOOL 値を保存し (必要に応じて)、各ビューでその値をチェックして、そのボタンを非表示にするか表示するかを確認します。
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setBool:TRUE forKey:@"checkThisBool"];