2011-10-14 18 views
8

Aprovecho las funciones de personalización de IU de IOS 5 para crear una pestaña personalizada. Yo sé cómo colocar un fondo personalizado y elemento de selección de este modo:personalización de IOS 5 TabBar

-(void)customizeAppearance { 
    UIImage *tabBg = [UIImage imageNamed:@"myTabBar.png"]; 
    [[UITabBar appearance] setBackgroundImage:navBg]; 

    [[UITabBar appearance] setSelectionIndicatorImage:[UIImage imageNamed:@"mySelector.png"]]; 
} 

También me gusta poner las imágenes "seleccionados" y "no seleccionados" para los iconos de barra de pestañas. De la documentación, veo que utiliza el método

setFinishedSelectedImage: withFinishedUnselectedImage: 

para lograr esto. Tengo 4 pestañas y he creado los 8 iconos necesarios para ellas. La pregunta es ¿cómo asigno cada conjunto de imágenes seleccionado/no seleccionado a cada pestaña?

+0

Esto es genial. No me di cuenta de que puedes personalizar la barra de pestañas. ¡Vota arriba! :) ¿Sabes si puedo hacer que una parte sea transparente para que no tenga necesariamente la forma del rectángulo? – Farini

Respuesta

20

Puede llamar al método para cada UITabBarItem en la propiedad tabBar. Por ejemplo:

UIImage *selectedImage = [UIImage imageNamed:@"selected.png"]; 
UIImage *unselectedImage = [UIImage imageNamed:@"unselected.png"]; 

UITabBar *tabBar = tabBarViewController.tabBar; 
UITabBarItem *item1 = [tabBar.items objectAtIndex:0]; 
[item1 setFinishedSelectedImage:selectedImage withFinishedUnselectedImage:unselectedImage]; 

y lo mismo para los otros tres elementos. ¡Espero que esto ayude!

+0

¡Gracias por responder a una pregunta tan básica! Lo aprecio, y sí, esto es lo que estaba buscando ... – awDemo