2012-01-03 10 views
6

Ho creato un progetto iOS con tabulazioni, quando ho ricevuto la richiesta di modificare l'immagine di sfondo della barra delle schede in un'immagine personalizzata. Il progetto è sviluppato per iOS 4.x, quindi l' [tabBar setTabBarBackgroundImage:[UIImage imageNamed:@"custom.jpg"]] di iOS5 non funziona. Puoi suggerirmi alcune soluzioni semplici (se c'è qualche possibilità, non vorrei cambiare l'intero progetto)?Immagine di sfondo della barra delle immagini personalizzata - in iOS 4.x

Edit: solo tre righe di codice in grado di risolvere tutti:

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"customImage.png"]]; 
[self.tabBarController.tabBar insertSubview:imageView atIndex:0]; 
[imageView release]; 

risposta

3

Una possibile soluzione potrebbe essere quella di mettere UIView l'immagine di sfondo con esattamente dietro la UITabBar. Quindi abbassa l'opacità della tua tabbar a 0,5 in modo da poter vedere l'immagine di sfondo che passa attraverso.

UIView *bckgrndView = [[UIView alloc] initWithFrame:CGRectMake(tabbar.frame.coords.x, tabbar.frame.coords.y, tabbar.frame.size.width, tabbar.frame.size.height)]; 
[bckgrndView setBackgroundImage:[UIImage imageNamed:@"custom.jpg"]]; 
[tabbar.superView insertSubView:bckgrndView belowSubview:tabbar]; 
tabbar.alpha = 0.5; 
[bckgrndView release]; 

Spiacente se il mio codice contiene alcuni errori. Ho provato a farlo a memoria ... Ma tu prenderai la direzione.

+0

Grazie, è stata una buona idea :) – MMMM

0

Ho risposto allo stesso tipo di domanda here. Spero che ti sarà d'aiuto.

0

Verificare NGTabBarController, una sostituzione della barra delle linguette open source con un'immagine di sfondo personalizzabile.

Problemi correlati