5

ナビゲーションコントローラーをベースにしたiPhoneアプリがあります。

記事のリストを表示するメインビューコントローラーと、で1つの記事を表示できる詳細ビューがありますUIWebView。詳細ビューでは、上部にナビゲーションバーがありUIToolbar、下部にaがあります。

スライドアニメーション(上下)で自動非表示にし、画面をタップすると元に戻したいのですが。これは標準機能だと思いましたが、どうすればいいのかわかりませんでした。

参考までに、これはStanzaまたはNYTアプリが行うことです。

4

4 に答える 4

17

タップイベントでこれを実行するメソッドを設定します。

if (![navigationController isNavigationBarHidden])
  [navigationController setNavigationBarHidden:YES animated:YES]; // hides
else
  [navigationController setNavigationBarHidden:NO animated:YES]; // shows

についてUIToolbarは、サブクラスであるため、これをスライドさせて見えなくするためのカスタムアニメーションUIViewを非常に簡単に設定できるはずです。

于 2009-09-08T20:09:29.893 に答える
1

これを試して:

BOOL hide = ![self.navigationController isNavigationBarHidden];
[self.navigationController setNavigationBarHidden:hide animated:YES];
于 2009-12-13T01:08:16.463 に答える
1

UIVIewControllerには非常に便利なメソッドもあります。

- (BOOL) hidesBottomBarWhenPushed {
//hide a toolbar or whatever
return NO;
}
于 2010-08-03T08:19:48.897 に答える
0

最近は使えると思いますself.navigationController.hidesBarsOnTap = true;

于 2014-11-11T23:20:16.657 に答える