0

я подгонять мой пользовательский UINavigationBar, чтобы показать собственное изображение (на самом деле я кроссфейд между большим количеством изображений на NSTimer):rightBarButtonItem.enabled удаляет свой собственный слой из uinavigationbar

- (void) displayImage:(EGOImageView*)anImageView { 
    CABasicAnimation *crossFade = [CABasicAnimation animationWithKeyPath:@"contents"]; 
    crossFade.duration = 0.5; 
    crossFade.fromValue = self.layer.contents; 
    crossFade.toValue = (id)[self imageFromView:anImageView].CGImage; 
    [self.layer addAnimation:crossFade forKey:@"animateContents"]; 
    self.layer.contents = (id)[self imageFromView:anImageView].CGImage; 
} 

Как предотвратить navigationBar потеряет свой пользовательский уровень при включении или отключении barButtonItem? Моя навигационная панель возвращается к, это по умолчанию состояние после того, как следующая строка в моей ВК выполняется:

self.navigationItem.rightBarButtonItem.enabled = !editing; 

(Он возвращается к UIBarStyleBlackOpaque я настроил в viewDidLoad в ВК)

ответ

1

Когда я работал над пользовательский NavBar я нашел это полезным How do iPhone apps Instagram/Reeder/DailyBooth implement custom NavigationBars with variable width back buttons?

В нем рассказывается о том, как создать пользовательский NavBar, а затем поговорить о прошлом сообщении, чтобы создать пользовательскую кнопку возврата. Который является полным сообщением, которое можно найти here. Я лично нашел их полезными в моем текущем проекте. Надеюсь, это объяснит, почему это происходит для вашего метода, или даст вам альтернативный метод использования, если вы не можете найти решение для вашего текущего метода использования crossFade и NSTimer.

+0

Thanx. Все, что мне нужно было сделать, это рисовать входящее изображение в моем drawRect. – P5ycH0

+0

Без проблем, рад, что это сработало, и я могу вам помочь. –