![](/img/trans.png)
[英]Hide Custom TabBarController using Three20 SDK in photo gallery
[英]Three20 & TabBarController
我被卡住了。
我正在使用three20和TTTNavigator示例。 在哪里可以找到正在使用的TabBarController:
[self setTabURLs:[NSArray arrayWithObjects:@"tt://crush",
@"tt://crushes",
nil]];
創建每個標簽。
好的,直到一切正常,我的問題是我的所有選項卡都沒有標題和圖像。 我知道如何在將視圖控制器加載到內部時設置單個- (void)viewDidLoad
:
self.title = @"crush";
UIImage* image = [UIImage imageNamed:self.title];
self.tabBarItem = [[[UITabBarItem alloc] initWithTitle:self.title image:image tag:0] autorelease];
但這是一個問題,因為在您啟動應用程序時,除選定項之外的所有選項卡都是空的。
關於如何實施的任何建議。
好的,我已經解決了,我像往常一樣使用了每個視圖控制器的-init方法。但是我需要更改的是:
[self setTabURLs:[NSArray arrayWithObjects:@"tt://crush/1",
@"tt://crushes/2",
nil]];
在地圖中:
[map from:@"tt://crush/(init)" toViewController:[MakeCrushViewController class]];
[map from:@"tt://crushes/(init)" toViewController:[MyCrushesViewController class]];
對我來說,現在看起來很奇怪..但是可以,請不要問我為什么需要在鏈接之前設置1和2。如果我在每個鏈接上都設置1則會崩潰...
這個人在此博客文章中對此問題有答案。 1個
基本上,在選項卡視圖控制器中,只需訪問您的視圖控制器即可,就像沒有Three20一樣。 在選項卡視圖控制器的實現文件中
-(void)viewDidLoad{
[super viewDidLoad];
NSArray *tabs = [self viewControllers];
UIViewController *home = [tabs objectAtIndex:0];
home.tabBarItem.image = [UIImage imageNamed:@"redo.png"];
UIViewController *activities = [tabs objectAtIndex:1];
activities.tabBarItem.image = [UIImage imageNamed:@"restart.png"];
UIViewController *map = [tabs objectAtIndex:2];
map.tabBarItem.image = [UIImage imageNamed:@"lock.png"];
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.