Я добавляю пользовательское фоновое изображение в свой UINavigationBar, переопределяя drawRect через категорию.
- ( void )drawRect:( CGRect )rect{
[[UIImage imageNamed:@"navbar.png"] drawInRect:CGRectMake( 0, self.frame.size.height-44, self.frame.size.width, 44 )];
}
Это решение работает нормально, пока вы не попытаетесь использовать свойство navigationitem.prompt.
Вместо плавной анимации представления приглашения, он делает это внезапно.
Есть какие-нибудь предложения о том, как это исправить? Или альтернативный способ установки фонового изображения.
PS. Я стараюсь избегать просто добавления фонового изображения в качестве подпредставления из-за того, как вещи меняются, когда представления нажимают / выдвигаются. И я не хотел бы отправлять SubviewToBack в viewDidAppear каждого представления.
ТИА!
РЕДАКТИРОВАТЬ: я также попробовал метод Swizzling, который работал бы хорошо, если бы я мог просто растянуть свое изображение, но, поскольку изображение не растягивается, мне нужно выяснить, как использовать анимацию, которая происходит, чтобы сделать сдвиг вместо натяжения.
РЕДАКТИРОВАТЬ: см. Мой хакерский ответ ниже