3

ユーザーが下にスクロールしたときにナビゲーションバーを非表示にする必要があります。現在、setNavigationBarHidden: YES animated:YESスクロールを呼び出していますが、アニメーションが呼び出されるとすぐにメインビューがジャンプするため、このソリューションは理想的ではありません。

Instagramアプリには、はるかに優れたソリューションがあります。ナビゲーションバーはメインビューの上部にロックされており、ユーザーがスクロールすると上にスクロールします。数ピクセル下にスクロールすると、ナビゲーションバーの一部だけが非表示になります。

これをどのように達成できるかについてのアイデアはありますか?

4

4 に答える 4

1

https://github.com/andreamazz/AMScrollingNavbarをチェックしてください。非常に使いやすくAMScrollingNavbar、viewControllerのサブクラスだけです

于 2013-12-02T15:57:08.613 に答える
0

ナビゲーションバーを使っているとは思いません。UITableViewのカスタムヘッダービューだと思います。少なくとも、UIViewをそこに配置できるので、これを実行します。

UITableViewデリゲートを使用して、これらのヘッダーを設定できます。

于 2012-09-14T17:53:57.653 に答える
0

ナビゲーションバーにはこの機能はありません。最良の方法は、カスタムビュー(カスタムナビゲーションバー)をメインビューのサブビューとして使用し、[UIView animateWithDuration ....]などの関数と、CATransform3DTranslateなどの変換関数を使用して自分でアニメーションを実行することです。

于 2012-09-14T19:00:25.400 に答える
0

Instagramが行った方法を正確に見つけました-ここで私の答えをチェックしてください パンジェスチャレコグナイザーはなく、バーを非表示にします、そのようなものはありませんscrollViewDidScroll、テーブルビューのデリゲートメソッド内のいくつかのクールなエンジニアリング

于 2014-02-01T08:51:54.863 に答える