2012-03-25 7 views
-1

Ich habe in meinem App-Delegierten einen Tab-Bar-Controller implementiert, aber es sind nur leere Quadrate in der Tab-Leiste. Ich möchte Titel und Bilder von ihnen ändern können, und ich möchte auch wissen, wie nicht nur benutzerdefinierte Bild verwenden, sondern "Standard" Bilder in Xcode ("Taschenrechner" Bild, "Suche" Bild) implementiert.Tabellarische Titel und Farben programmatisch ändern

Wenn Sie Tab-Leiste in einem xib haben, können Sie es in Registerkarte Leiste Element -> Attribute Inspektor -> Kennung sehen, dann gibt es eine Liste, wenn Sie keine benutzerdefinierten Bilder verwenden möchten. So gibt es mein appDelegate.m Code:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // Override point for customization after app launch 


    UIViewController *banksList = [[FailedBanksListViewController alloc] initWithNibName:@"FailedBanksListViewController" bundle:nil]; 
    UINavigationController *listNavigationController = [[UINavigationController alloc] initWithRootViewController:banksList]; 

    UIViewController *first = [[BIDViewController alloc] initWithNibName:@"BIDViewController" bundle:nil];  
    UIViewController *second = [[BIDDailyCount alloc] initWithNibName:@"BIDDailyCount" bundle:nil]; 

    self.tabBarController = [[UITabBarController alloc] init]; 
    self.tabBarController.viewControllers = [NSArray arrayWithObjects:first,second,listNavigationController, nil]; 
    self.window.rootViewController = self.tabBarController; 
    [self.window makeKeyAndVisible];  


    return YES; 
} 

Antwort

2

Sie müssen erstellen Sie Ihre UITabBarItem Ihr Selbst s.

In Ihrem AppDelegate Sie so etwas wie tun könnte:

UIViewController *banksList = [[FailedBanksListViewController alloc] initWithNibName:@"FailedBanksListViewController" bundle:nil]; 
banksList.tabBarItem = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemSearch tag:0]; 

Rückkehr selbst;

Es könnte eine gute Idee sein, dies in einen benutzerdefinierten Initialisierer in den Controllern für jede Registerkarte zu verschieben.

+0

Danke Jacob, es hilft! – Necrosoft

+0

Das System 'UITabBarSystemItemSearch' * ist * das Bild. Ich dachte, das ist was du wolltest. Sie setzen den Titel wie gewohnt: 'banksList.title = @" List ";' –

+0

Problem gelöst. Danke noch einmal! – Necrosoft