barra de navigation iOS setBackBarButtonItem a button personalizado

Necesito ayuda para personalizar 'backBarButtonItem' Y no, no quiero usar el LeftBarButtomItem ya que quiero henetworkingar el estilo y mantener la transición desde 'BackBarButtom'

Okey, entonces lo que obtuve es:

UIBarButtonItem* barbtnItem = [[UIBarButtonItem alloc]initWithCustomView: [ArrivalProto ArrivalBtnTypeBack]]; 

[ArrivalProto ArrivalBtnTypeBack] me devuelve un button UI personalizado con setBackgroundImage y setImage.

Y luego todo lo que quiero hacer es agregar esto para personalizar BackBarButton:

 [self.navigationItem setBackBarButtonItem: barbtnItem]; 

Pero nooo Simplemente el backbot normal de Plain: (((Aunque parece funcionar:

 //self.navigationItem setLeftBarButtonItem:barbtnItem]; 

Y esto también:

 UIImage *btnTrnspBgrImg30 = [[UIImage imageNamed:@"trspBlackBtn30"]resizableImageWithCapInsets:UIEdgeInsetsMake(0, 5, 0, 5)]; [[UIBarButtonItem appearance] setBackButtonBackgroundImage:btnTrnspBgrImg30 forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; 

Info:

 [self.navigationItem setBackBarButtonItem: <#(UIBarButtonItem *)#>]; [self.navigationItem setLeftBarButtonItem:<#(UIBarButtonItem *)#>] 

A partir de iOS5 tenemos una nueva forma excelente de personalizar la apariencia de casi cualquier control utilizando el proxy de apariencia , es decir, [UIBarButtonItem appearance] . El proxy de apariencia le permite crear cambios de aplicación amplia en el aspecto de los controles. A continuación se muestra un ejemplo de un button de retroceso personalizado creado con el proxy de apariencia.

introduzca la descripción de la imagen aquí

Use el código de ejemplo a continuación para crear un button de retroceso con imágenes personalizadas para estados normales y resaltados. Llame al siguiente método desde la application:didFinishLaunchingWithOptions: appDelegate application:didFinishLaunchingWithOptions:

 - (void) customizeAppearance { UIImage *i1 = [[UIImage imageNamed:@"custom_backButton_30px"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 15, 0, 6)]; UIImage *i2 = [[UIImage imageNamed:@"custom_backButton_24px"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 15, 0, 6)]; [[UIBarButtonItem appearance] setBackButtonBackgroundImage:i1 forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; [[UIBarButtonItem appearance] setBackButtonBackgroundImage:i2 forState:UIControlStateNormal barMetrics:UIBarMetricsLandscapePhone]; [[UIBarButtonItem appearance] setBackButtonBackgroundImage:i1 forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault]; [[UIBarButtonItem appearance] setBackButtonBackgroundImage:i2 forState:UIControlStateHighlighted barMetrics:UIBarMetricsLandscapePhone]; } 

Este es solo un ejemplo rápido. Normalmente, desearía tener imágenes separadas para el estado normal y resaltado (presionado).

Si está interesado en personalizar la apariencia de otros controles, puede encontrar algunos buenos ejemplos aquí: http://ios.biomsoft.com/2011/10/13/user-interface-customization-in-ios-5/