2017-02-07 7 views
2

1つのNavigationController内に多数のViewControllerがあります。 ViewControllerの1つでは、navigationBarの下にtoolBarを表示する必要があります。単に必要な座標でのViewControllerにそれを追加した場合、私はこれを持っている:トップツールバーとナビゲーションバーの一般的なぼかし効果

enter image description here

しかし、ここではNavigationBarとツールバーの間の区切り文字です。

私は明確な背景と影の画像を設定し、navigationBarための設定ぼかし効果場合は、navigationBar、ツールバーの異なるぼかし効果の問題です: enter image description here のでnavigationBarにはimagesShadowがない場合、それは解像度で、一般的なぼかしがあります効果?

+0

'UIBlurEffect'クラスを使用できます。 –

+0

broさんは、ナビゲーションバーの背景色で何をしているのか教えていただけますか? –

+0

まさにUIBlurEffectクラス 'blurEffectView.frame = self.navBar.bounds;'& 'blurEffectView.frame = self.toolBar.bounds; 'を使用している場合です。 –

答えて

0

私は私の問題を解決します。解決のアイデアは、NavigationBarとToolBarを完全に透明にします。次に、バーの代わりにすべてのViewControllerで、それらの下に、バーまたはバーの共通の高さを持つUIVisualEffectViewを配置します。したがって、UIVisualEffectViewはViewControllerのrootViewの最高のサブビューである必要があります。 UITalbeViewController UITabBarControllerなどを使用する場合の問題はここにあります。私の状況では、UITalbeViewControllerだけがありました。まず、this resolutionを使用しようとします。しかし、私は、異なるViewControllerを介して複数のサブビューを作成することに問題がありました。私はストーリーボードを再構築します。すべてのTableViewController私は、ViewControllerによって、rootViewの単純なビューに置き換えました。 TableViewはrootViewのサブビューでした。また、VisualEffectViewを配置しました。私はすべてのTableViewControllersのためにそれを行っています。ここで は、構造物のサンプルです:

Sample of structure of controller

私はより良い解像度がそこにあると思いますが、現在はこれが最適です。

関連する問題