4

非常に単純な質問: 私の iPhone アプリには MainWindow.xib にボタンがあります。そのボタンを押すと、新しいビューが読み込まれます。そのビューには、素敵なナビゲーション コントローラーが含まれます。どうやってやるの?

私が見つけたすべての情報は、ナビゲーション コントローラーから直接起動するアプリに関するものです。ボタンをクリックした後、ナビゲーションコントローラーをロードする必要があります。

どうもありがとう!

4

1 に答える 1

2

これに対処する別の方法は、ルート コントローラーでナビゲーション バーを単純に非表示にすることです。

- (void) viewDidLoad {
  ...
  if (![self.navigationController isNavigationBarHidden])
    [self.navigationController setNavigationBarHidden:YES animated:NO];
  ...
}

そうすれば、邪魔にならないナビゲーション バーのないきれいなルート コントローラーができあがります。

ルート コントローラーのボタンをクリックすると、新しいビューがプッシュされ、ナビゲーション バーの非表示が解除されます。

- (IBAction) pushAnotherView:(id)sender {
  AnotherViewController *anotherViewController = [[AnotherViewController alloc] initWithNibName:@"AnotherViewController" bundle:nil];
  [self.navigationController pushViewController:anotherViewController animated:YES];
  if ([self.navigationController isNavigationBarHidden])
    [self.navigationController setNavigationBarHidden:NO animated:YES];
  [anotherViewController release];
}

ルート ビュー コントローラーに戻る通知またはその他のアクションがある場合は、通知バーをもう一度非表示にします。

- (void) viewWillAppear:(BOOL)animated {
  if (![self.navigationController isNavigationBarHidden])
    [self.navigationController setNavigationBarHidden:YES animated:YES];
  [super viewWillAppear:animated];
}
于 2009-04-25T09:24:01.710 に答える