2011-03-14 64 views
0

我對使用UITabBarController的應用程序有一個很奇怪的問題。iPhone UITabBarController - 很難點擊標籤項

首先,我創建的標籤欄編程,而不是使用筆尖,鼻翼:

tabBarController = [[UITabBarController alloc] init]; 
NSMutableArray *localControllersArray = [[NSMutableArray alloc] initWithCapacity: 3]; 
UINavigationController *nav; 

VisitViewController *viewVisit = [[VisitViewController alloc] initWithTabBar]; 
nav = [[UINavigationController alloc] initWithRootViewController: viewVisit]; 
[localControllersArray addObject:nav]; 
[nav release]; 
[viewVisit release]; 

// ... other tabs, same format as previous 

tabBarController.viewControllers = localControllersArray; 
[localControllersArray release]; 
[window addSubview:tabBarController.view]; 
[window makeKeyAndVisible]; 

另外一個需要注意的一點是,在每個視圖控制器我加入,我打電話「 self.title ='標題標題';「設置標題文本。我懷疑這個問題。

無論如何,一切運行並顯示正常 - 我遇到的問題是,如果我點擊標籤圖像的下半部分沒有任何反應。我必須點擊50%以上的標記才能使標籤項目選擇並更改標籤。

如果您查看標籤欄應用程序,那麼水平方向中間會出現一種自然漸變分隔。基本上低於該行的任何東西,我不能點擊切換標籤。這真的很煩人,因爲在一個設備上,它會讓你一遍又一遍地點擊標籤,直到你超過該標記,並且感覺非常緩慢。在Twitter等其他標籤應用中,它完美地起作用。

任何想法?

回答

0

我想通了。我用的是:

CGRect screenRect = [[UIScreen mainScreen] applicationFrame]; 
self.window = [[UIWindow alloc] initWithFrame:screenRect]; 

這必須被切斷自己的看法可點擊區域並以某種方式割去標籤欄。我把它改爲:

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 

它解決了我的問題。