Sto provando a impostare a livello di codice l'immagine di sfondo per una barra delle linguette nella mia app. Il mio codice è il seguente:Impostazione di un'immagine di sfondo per una barra delle schede
RootViewController.h
IBOutlet UITabBar *mainTabBar;
IBOutlet UITabBarItem *settingsBarItem;
IBOutlet UITabBarItem *infoBarItem;
IBOutlet UITabBarItem *aboutBarItem;
RootViewController.m
-(void)viewDidLoad {
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"smallMenuBackground.png"]];
[mainTabBar insertSubview:imageView atIndex:0];
[imageView release];
[super viewDidLoad];
}
Questo non funziona per me.
UPDATE
AGGIORNAMENTO 23 gennaio 2012
Ok, ho fatto un po 'di progresso. Questo ha smesso di funzionare da quando ho aggiornato a Xcode 4.2 e IOS5. Sono riuscito a recuperarlo usando le opzioni di Interface Builder, ma ora funziona solo con IOS5. Idealmente avrei voluto lavorare in modo programmatico, ma per ora mi accontenterò della soluzione IB.
Non riesco proprio a farlo funzionare per le versioni precedenti.
NOTA: il mio TabBar è solo sul mio RootViewController, che è la schermata principale della mia app.
Idealmente, se ho potuto ottenere il codice di lavoro che Nithin suggerito, che sarebbe grande:
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"tabBG.png"]];
if ([[[UIDevice currentDevice] systemVersion] floatValue] > 4.9) {
//iOS 5
[self.tabBarController.tabBar insertSubview:imageView atIndex:1];
}
else {
//iOS 4.whatever and below
[self.tabBarController.tabBar insertSubview:imageView atIndex:0];
}
[imageView release];
Qualsiasi aiuto sarebbe apprezzato.
saluti, Stephen
controllare questo link. Qui però è richiesto il colore di sfondo, ma c'è un codice per mettere l'immagine come sfondo in un post. [Controllalo] (http://stackoverflow.com/questions/571028/changing-tint-background-color-of-uitabbar). – Sarah