2012-01-12 6 views
0

私が働いているiphoneアプリケーションにグローバルtabBarControllerを1つ入れました。 しかし私の画面の1つでは、グローバルtabBarControllerとは異なるローカルtabBarを配置する必要がありました。グローバルtabBarにローカルtabBarを置く(私はグローバルtabBarControllerを持っています)

私は2つの方法でそれを行いました: 1)self.tabBarController.tabBar.hidden = yes;でグローバルtabBarを非表示にしました。そのビューの代わりにローカルtabBarを置くことです。しかし、tabBarのフレームは白い空白を表示しています。 2)グローバルtabBarのサブビューとしてローカルtabBarを追加してみましたが、画面がアンロードされた後、[localTabBar removeFromSuperView]を適用してローカルtabBarを削除しないでください。

Global tabBarController: 
tabBarController   = [[UITabBarController alloc] init]; 
tabBarController.viewControllers = [NSArray arrayWithObjects:ActivityTabnav,nav2,privateChatnav,ExploreTabnav,nav3,tempTabnav, nil]; 

localtabBarはのViewControllerのビューXIBにTabBarにある事前に

感謝.. vIewDidUnLoadでのviewDidLoadで >

UIWindow* window = [[UIApplication sharedApplication] keyWindow]; 
[window addSubview:self.tabBar]; 

>

[self.tabBar removeFromSuperview]; 

以前私が他の画面にローカルself.tabBarを持続サブビューとしてself.tabBarController.tabBarにself.tabBarを追加しようとしました。

ありがとう...

答えて

1

私が見つけた最もきれいな方法は、あなたのビューコントローラのhidesBottomBarWhenPushedプロパティを設定し、それをUINavigationControllerの中に置くことです(必要がなければnavigiationBarを隠す)。これにより、空白を残さずにUITabBarController'sUITabBarが非表示になります。

次に、ローカルUITabBarUIViewController'sビューに直接配置します。

UITabBarController'sUITabBarを非表示にして、ローカルUITabBarをサブビューとしてUITabBarController'sビューに追加することもできます。もちろん、必要に応じてスーパービューから削除する必要があります。

+0

私はそれをしたのでしょうか? hidesBottomBarWhenPushedプロパティの設定は機能しましたが、画面がアンロードされた後は、superviewから削除されても、localTabBarは保持されます。私は、グローバルtabBarとtabBarController ViewのサブビューとしてlocaltabBarを設定しました。 – Dinesh

+0

こんにちは、ありがとうございました。viewController設定の機能を初期化する際に、グローバルtabBarのhidesBottomBarWhenPushedがトリックでした。 – Dinesh

0

1つの方法は、TabBarをウィンドウに追加することです。しかし、あなたが正しく扱っていることを確認してください。あなたは、これは一つの選択肢であることが、慎重にそれを扱うことができる

UIWindow* window = [[UIApplication sharedApplication] keyWindow]; 
[window addSubview:tabbar]; 

...以下のように...

を現在のWindowオブジェクトを取ることによって、ウィンドウの上にそれを追加して、その上にTabBarを追加することができます...

+0

tabBarを追加しますが、画面がアンロードされたとき(つまりviedDidUnloadのとき)[tabBar removeFromSuperview]は削除していません。このローカルビューは、他の画面に保持されています。ありがとう... – Dinesh

+0

いくつかのコードを投稿することができます... – DShah

+0

私はコードを追加しました。それを確認できますか?ありがとうございます.. – Dinesh

関連する問題