すべてのViewControllerに固定イメージを設定したい。ビューが変更されると、画像は静止したままで、すべての上に表示されます(のようなものUINavigationBar
)。UINavigationBar
制限があるので使用は避けたいです。それは可能ですか?
2 に答える
はい、次のように、View Controller ビューの上のウィンドウ内に View を配置する必要がある可能性があります。
[self.window insertSubview:self.logoButton
aboveSubview:self.navigationController.navigationBar];
このコードは、ナビゲーション バーの上に UIButton を配置します。ナビゲーション バーがアニメーション化されている間、ボタンはアニメーション化されません。
私はそのコードを入れました:
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
これはまさにあなたが望むものではありませんが、必要に応じて変更できるはずです。
カスタム コンテナ コントローラまたはコンテナ ビューを使用してこれを行う必要があると思います。最も簡単な方法は、ストーリーボードでコンテナー ビューを使用することです。1 つのビュー コントローラーから始めて、2 つのコンテナー ビューをドラッグし、必要なサイズに調整します (一番上のビュー コントローラーをビューの上部に配置し、イメージのサイズに合わせます)。これらのコンテナー ビューに接続された 2 つのビュー コントローラーを取得します。ナビゲーションを行う場合は、おそらく一番下のコントローラーを削除し、ナビゲーション コントローラーをドラッグして、コンテナーからコントロール ドラッグして元に戻す必要があります (トップ コントローラーをナビゲーション バーのように使用する場合は、ナビゲーション バーを非表示にできます)。その下部のコントローラーで行うナビゲーションはすべて、その下部のビューに限定され、上部の画像バーはそのまま残ります。