2011-05-12 14 views
2

私は単純なビューベースのiPhoneアプリケーションで作業しています。 Appのメイン画面から、4種類のビューに移動できます。 これらのビューの1つはタブバーで構成されています。 これは通常の方法ではないので、私はUITabControllerなしで回避策を使用しました。 https://discussions.apple.com/thread/2099944?start=0&tstart=0ビューベース/タブバーアプリケーションでタブバーを非表示にする方法

そして、この例のコード::この作品いくつかの小さな変更で http://pymbian.svn.sourceforge.net/svnroot/pymbian/stuff/testtab_raynewbie/Classes/

が、これは私がこのトピックの使用を達成するために作られました。 タブ付きのビューからホームビューに戻るときには、最後のバグが1つしかありません。タブバーは画面の下部にとどまります。

ここで説明したいくつかのアプローチを試しました。

myTabBar.hidden = YES 
hidesBottomBarWhenPushed = YES 

が、どれも、私は、問題は、ビューのUIコントローラの奇妙な構造のどこかにあると思い ....動作するようです。今は構造がこのように見えるからです。

MainViewController 
- ViewController with TabBar 
    - tab1viewcontroller 
    - tab2viewcontroller 
- other viewcontrollers 

メインビューに戻るには、TabBarに何もできないtab1viewcontrollerを使用します。他のすべてのビューで私はこのコードで戻って行きます:

-(IBAction) BackAction:(id)sender { 

mainControllerView = [[MainControllerView alloc] initWithNibName:@"MainControllerView" bundle:nil]; 
[self.view addSubview:mainControllerView.view]; 
[mainControllerView.view release]; 

} 

誰かアイデア?

+0

を非表示にするビュー・コントローラに次のコードを試してみてくださいplzはありがとう。 –

答えて

2

前のビューから押したときにタブバーを非表示にする必要があります。

LoginViewController *loginViewObj =[[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil]; 
loginViewObj.hidesBottomBarWhenPushed=YES; 

LoginViewControllerは、タブバーが必要ない場合に表示されるビューです。 :)

0

、私はあなたがどんな事を知っていれば.Uは?すべてのソリューションを持って同じprobemの男を持っているあなたはタブバーに

-(void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:YES]; 
    [self.tabBarController.view setFrame:CGRectMake(0, 0, 320, 560)]; 
} 

-(void)viewWillDisappear:(BOOL)animated 
{ 
    [super viewWillDisappear:YES]; 
    [self.tabBarController.view setFrame:CGRectMake(0, 0, 320, 480)]; 

} 
+0

これはタブバーを隠すためのやっかいな方法です、あなたはこの方法でそれを広げてはいけません..下の投票に申し訳ありません。 –

関連する問題