7

У меня проблема с моим UIBackbutton, который не появляется, и я не уверен, что его вызывает.UIBackButton Background Изображение не отображается

Это мой код для создания кнопки назад изображения, оно находится в моем первом ViewController:

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

При первом входе в следующем виде (сделано с помощью Segue от кнопки) кнопка не видимый, но текст, который нужно вернуться, виден. Как только я нажал кнопку «Назад», изображение появится, и оно останется в следующий раз, когда я нажму.

Я не уверен, что это проблема, связанная с моим кодом, или с файлом, в котором он находится, или с его проблемой iOS 7.

+1

У меня точно такая же проблема, и проблема возникла с iOS 7. Я много искал и до сих пор не нашел решения. Если вы оставите синий по умолчанию backBarButtonItem и удалите свой собственный backgroundImage, возможно, вам это поможет. – Engnyl

+0

Тихая общая проблема с пользовательской графикой на iOS7. Одиночная проблема –

+0

Вы нашли решение для этого? – DivineDesert

ответ

-1

Попробуйте это:

self.navigationItem.hidesBackButton = NO; 

если вы пытаетесь добавить его в панели навигации, то:

UIImage* image4 = [UIImage imageNamed:@".....png"]; 
    button = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 26, 26)]; 
    [button setBackgroundImage:....png forState:UIControlStateNormal]; 
    [button addTarget:self action:@selector(Selector) 
     forControlEvents:UIControlEventTouchUpInside]; 
    [button setShowsTouchWhenHighlighted:YES]; 

    UIBarButtonItem *action = [[UIBarButtonItem alloc] initWithCustomView:button]; 
    NSArray *arr =[[NSArray alloc]initWithObjects:action, nil]; 
    self.navigationItem.rightBarButtonItems = arr; 
+0

Кнопка, созданная с помощью этого кода, не работает как backBarButton. –

2

Вы можете иметь больше удачи, используя UIBarButtonItem и настройки кнопки назад фон явно ,

Прокси-сервер внешнего вида был ненадежным в моих попытках получить обратную кнопку, работающую с iOS 7. Я столкнулся с той же проблемой, когда фон не отображался правильно в первый раз, показывая кнопку.

0

Если вам просто нужно изменить цвет, попробуйте этот [[UINavigationBar appearance] setTintColor:[UIColor redColor]];

0

Если вы хотите изменить назад изображение кнопки нужно просто написать это 2 строки кода:

[self.navigationBar setBackIndicatorImage:[UIImage imageNamed:@"icon-back"]]; 
[self.navigationBar setBackIndicatorTransitionMaskImage:[UIImage imageNamed:@"icon-back"]]; 

И если вы создаете подкласс UINavigationController позволяет легко настроить навигационную панель и нажать & поп-контроллеры

Смежные вопросы