2011-01-31 75 views
1

我想重新定位UITabbarController中的標籤欄。我知道這不是一個好主意,但那是我被要求做的。我設法將TabBar移動到屏幕頂部:UITTabBarController自定義(重新定位tabbar)

self.tabBarController.tabBar.frame = CGRectMake(0, 0, 768, 68); 

它工作的很好。不幸的是,內容視圖不會相應地重新定位。

我重新定位標籤欄後,我添加了內容視圖,並嘗試手動調整,但它沒有任何效果:

self.tabBarController.viewControllers = [NSArray arrayWithObjects: 
     [[[HomeViewController alloc] initWithNibName:nil bundle:nil] autorelease], 
     nil]; 
// dummy values for testing. 
self.tabBarController.selectedViewController.view.frame = CGRectMake(0, 69, 10 , 10); 

我在做什麼錯?

回答

0

如何將tabBarController.view的框架向下移動68像素? 您必須將tabBar的框架的y座標設置爲-68而不是0.

如果看不到tabBar,則可能必須將tabBarController.clipsToBounds設置爲NO。

雖然沒有嘗試過。

+0

我可以正確定位tabbar,但我無法得到「內容視圖」的其餘部分。我想我可以用tabController.viewControllers objectAtIndex:0(例如對於第一個選定的控制器)來獲得它,但修改框架值沒有任何影響。 – EightyEight 2011-02-03 01:10:15