Я хотел бы заменить кнопку «Назад» и всю панель навигации в приложении iPhone с пользовательскими изображениями. Во-первых, возможно ли это? Во-вторых, если да, то как? Благодарю.Картинки для iPhone iPhone
ответ
Этот код изменяет каждый UINavigationBar в вашем приложении.
@implementation UINavigationBar (CustomImage)
- (void)drawRect:(CGRect)rect {
UIImage *image = [UIImage imageNamed: @"MyNavigationBar.png"];
[image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
@end
Это должно быть отмечено как ответ. –
Это отлично поработало, спасибо за отзыв – Robert
@pierre хороший ответ, вы должны попросить позвонить супер, на случай, если вы хотите, например, сохранить обратные кнопки. –
Вы не сможете легко переопределить внешний вид панели навигации Apple, и даже если вы в состоянии это сделать, есть хорошие шансы, что это будет противоречить их политике избегать частных API. Тем не менее, довольно просто создать свою собственную навигационную панель, используя все пользовательские изображения. Это будет хорошо работать для простых одноразовых экранов, которым нужна панель навигации, но будет зверь для реализации на сложной иерархии на основе UINavigationController.
Редактировать: похоже, что люди смогли изменить фон, переопределив селектор -drawRect
: Custom background for UINavigationBar?. Я не вижу никаких сообщений о том, были ли изменения одобрены для App Store.
Я был свидетелем многих приложений, в которых такая практика получила одобрение для продажи в магазине. Apple все равно. –
Вы можете использовать этот код, чтобы изменить панель навигации изображения и панель вкладок изображения для пользовательских изображений:
if([[UINavigationBar class] respondsToSelector:@selector(appearance)]) {//iOS >=5.0
UIImage *image = [UIImage imageNamed:@"myCustomImage.png"];
CGSize newSize = CGSizeMake(self.navigationController.navigationBar.frame.size.width, self.navigationController.navigationBar.frame.size.height);
UIGraphicsBeginImageContext(newSize);
[image drawInRect: CGRectMake(0, 0, self.navigationController.navigationBar.frame.size.width, self.navigationController.navigationBar.frame.size.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
[self.navigationController.navigationBar setBackgroundImage:newImage forBarMetrics:UIBarMetricsDefault];
[[UIToolbar appearance] setBackgroundImage:newImage forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsDefault];
[[UITabBar appearance] setBackgroundImage:newImage];
[[UITabBar appearance] setSelectedImageTintColor:[UIColor cyanColor]];
}
- 1. Картинки в приложении для iPhone
- 2. Картинки для iPhone 6 Plus в сети
- 3. Картинки в iPhone и портретные режимы HTML5
- 4. Картинки iPhone все еще хранятся в памяти?
- 5. Приложение iPhone для iPhone iPhone
- 6. Параметры iPhone для iPhone iPhone
- 7. iPhone для iPhone связи
- 8. iPhone для iPhone связи
- 9. iPhone для iPhone сетей
- 10. Приложение для iPhone iPhone
- 11. Идеи iPhone для iPhone?
- 12. Приложение для iPhone iPhone
- 13. Установка iPhone приложение для iPhone
- 14. Элементы дизайна iPhone для iPhone
- 15. Экран запуска iPhone для iPhone
- 16. iPhone и аудиофайлы для iPhone
- 17. Использование iPhone для частного iPhone
- 18. iPhone-клиент-приложение для iPhone
- 19. Размер видео для iPhone iPhone
- 20. iPhone: тестирование приложений для iPhone
- 21. Загрузки файлов iPhone для iPhone
- 22. Элементы управления iPhone для iPhone
- 23. Приложение для iPhone для мгновенного сообщения iPhone
- 24. Приложение для iPhone на iPhone для Android
- 25. Как разработать приложение для iPhone для iPhone
- 26. Насколько важна релиз для iPhone для iPhone?
- 27. Поиск совета для структуры iPhone для iPhone
- 28. Сделать приложение для iPhone только для iPhone
- 29. Разработка приложения для привязки iPhone для iPhone
- 30. Как работает приложение для iPhone для iPhone?
ли вы имеете в виду собственные изображения только с помощью кнопок на панели навигации, или весь нав бар (фон и т. д.)? –
Меня тоже интересовали кнопки =) – Pasta