2012-06-18 20 views
5

trato de cambiar el color de un UIPopoverControler en iOS 5. Para ello, utilizo una subclase de UIPopoverBackgroundView que le asigno a mi popover así:UIPopoverController (y color botón de retroceso)

self.popover.popoverBackgroundViewClass = [KWPopoverBackgroundView class]; 

Mi popover ahora es negro como definí en mi clase KWPopoverBackgroundView, pero todavía tengo un problema con la apariencia. El botón Atrás (Medallas) del navigationController dentro de mi popover sigue siendo azul. Quiero todo unificado en negro. ¿Cómo me deshago de este color azul?

enter image description here

He intentado cambiar el tintColor de mi navigationController.navigationBar pero por supuesto el popover does'nt importa eso. ¿Hay alguna manera de arreglar esto en iOS 5.0? (Mi aplicación está en la AppStore, no quiero un feo truco para arreglar esto) Gracias.

+0

no funciona en iOS7 – Jacky

Respuesta

12

Ok, acabo de encontrar cómo cambiar el color del tinte del botón Atrás de UINavigationController (u otros UIBarButtonItems) dentro del UIPopoverController.

Con UIPopoverBackgroundView solo puede cambiar las imágenes de fondo y flecha. Para cambiar la apariencia de otros elementos, debe usar UIAppearance con algo como lo siguiente.

// Set the UIBarButtonItem(s) inside UIPopoverController class to dark gray 
[[UIBarButtonItem appearanceWhenContainedIn:[UIPopoverController class], nil] 
         setTintColor:[UIColor colorWithWhite:0.1f alpha:1.0f]]; 

black popover with black back button item

+0

He buscado con varias palabras clave y estaba a punto de renunciar y encontrar una imagen para utilizar en la búsqueda de imágenes de Google. Curiosamente, fue la búsqueda de imágenes de Google lo que me trajo esta hermosa solución. ¡Gracias por responder tu propia pregunta con esto! – acedanger

Cuestiones relacionadas