El color de la image del elemento del button de barra de navigation es diferente cuando se diseña a través de xib de xcode5

Mi problema es que estoy creando el button de la barra de navigation usando xib, pero cuando voy a configurar la image en el button de barra, el color de la image es diferente como la image original.

Aquí está mi image original.

Aquí está mi imagen original.

Y después de agregar esa image en el elemento del button de la barra de navigation de lo que parece este

Después de agregar esa imagen en la barra de navegación

Primero, estoy de acuerdo con el comentario de @ Desdenova.
Las dos imágenes no tienen el mismo aspecto, una tiene aristas rectas en ángulo recto para cada línea y la otra networkingondeada.
Asegúrate de estar usando el file de image correcto.
Si este es el caso, impresionante, problema resuelto sin desviarse de su implementación xib . Si no, simplemente hágalo mediante progtwigción (según el código @shankars).
Pero otra cosa a tener en count, he tenido problemas para configurar los files de image personalizados en botones, donde la image se ajusta … asegúrese de usar UIImageRenderingModeAlwaysOriginal al configurar la image en el button:

C objective:

 [button setImage:[[UIImage imageNamed:@"imageName.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] forState:UIControlStateNormal]; 

Rápido:

 someBarButtonItem.image = UIImage(named: "yourPictureName")?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal) 

Swift 3:

 someBarButtonItem.image = UIImage(named:"myImage")?.withRenderingMode(.alwaysOriginal) 

Este es el código de muestra de trabajo.

 UIImage *myImage = [UIImage imageNamed:@"myImageFile.png"]; myImage = [myImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; UIBarButtonItem *menuButton = [[UIBarButtonItem alloc] initWithImage:myImage style:UIBarButtonItemStylePlain target:self action:@selector(menuObject:)]; self.navigationItem.leftBarButtonItem = menuButton; 

Puede crear un button de barra de navigation mediante progtwigción en lugar de un guión gráfico directo, esto no afectará el color de la image original

 self.navigationItem.leftBarButtonItem=[self backButton]; - (UIBarButtonItem *)backButton { UIImage *image = [UIImage imageNamed:@"image.png"]; CGRect buttonFrame = CGRectMake(0, 0, image.size.width, image.size.height); UIButton *button = [[UIButton alloc] initWithFrame:buttonFrame]; //[button addTarget:self action:@selector(backButtonPressed) forControlEvents:UIControlEventTouchUpInside]; [button setImage:image forState:UIControlStateNormal]; UIBarButtonItem *item= [[UIBarButtonItem alloc] initWithCustomView:button]; return item; } 

Porque ios7 storyboard tiene el problema que enfrenté para arreglar como a continuación. establece tu color de tinte como color de image funciona

introduzca la descripción de la imagen aquí

También necesita configurar el color de tinte, que funcionó para mí. Puede generar UIBarButtonItem mediante el código de la siguiente manera:

 #define setTurqoiseColor [UIColor colorWithRed:68.0f/255.0f green:181.0f/255.0f blue:223.0f/255.0f alpha:1.0] UIBarButtonItem *menuButton = [[UIBarButtonItem alloc] initWithImage:buttonImage style:UIBarButtonItemStyleBordenetworking target:self action:@selector(toggleMenu)]; menuButton.tintColor = setTurqoiseColor;