このコードを使用して、ナビゲーション バーにロゴを正常に追加しました。
UIImage *image = [UIImage imageNamed: @"top-logo"];
UIImageView *imageView = [[UIImageView alloc] initWithImage: image];
self.navigationItem.titleView = imageView;
問題は、ロゴの高さが54 ピクセルで、ナビゲーション バーの高さがデフォルトで44 ピクセルであることです。ロゴは意図的にナビゲーション バーの下部からオーバーフローするように設計されていますが、そのためにはナビゲーション バーの境界を変更する必要があり、Apple のガイドラインに違反したくありません。しかし、ナビゲーションバーからオーバーフローするには、ナビゲーションアイテムの titleView である imageView が必要です。
その上、私のアプリの 1 つで、ナビゲーション バーの高さを減らしましたが、アプリがバックグラウンドに戻って戻ってきたときにおかしくなり始めました (高さが通常に戻り始めたため、ナビゲーション バー内の背景が黒くなりました)。