Я хочу установить цвет фона для NavigationBar и TabBar. Это должен быть градиент, содержащий два шестнадцатеричных цвета. Как я могу сделать это в объективе-c? Спасибо,Настройка цвета NavigationBar и TabBar с градиентом в объективе-c
ответ
Это поможет вам изменить цвет навигационной панели & Tab бар
UINavigationController *navigationController;
...
navigationController.navigationBar.tintColor = [UIColor blackColor];
UITabBarController *tabBarCon;
...
tabBarCon.tabBar.tintColor = [UIColor blueColor];
спасибо за ответ, но цвет фона должен быть градиентом, содержащим два шестнадцатеричных цвета. Как я могу это реализовать? – realuser
Я не понимаю градиент, содержащий шестнадцатеричный цвет. Но я предлагаю вам обратиться к этому [link] (http://stackoverflow.com/questions/1979165/applying-background-gradient-to-a-grouple-table-cell), прежде чем продолжить. –
У вас есть два цвета, которые являются двумя конечными точками, и градиент должен плавно перетекать от первого цвета ко второму. Единственное отличие здесь в том, что у пользователя есть два гексагональных цвета, которые ему нужно использовать, а не только один цвет. Это, по сути, особый градиент, и есть другие вопросы о SO, которые вызывают это, просто не так много с шестнадцатеричными цветами. – ekinnear
Для TabBar я была та же самая проблема с моим приложением, и я придумал следующее: в applicationDidFinishLaunching метод Я создал функцию для рисования градиента и использовал экземпляр моего UITabBarController для настройки правильного кадра градиента в зависимости от ширины устройства.
- (UIImage *)drawGradientInView:(UITabBarController *) tabBarVC {
CAGradientLayer *gradient = [CAGradientLayer layer];
gradient.frame = CGRectMake(CGRectGetMinX(tabBarVC.tabBar.frame), CGRectGetMinY(tabBarVC.tabBar.frame), CGRectGetWidth(tabBarVC.view.frame), CGRectGetHeight(tabBarVC.tabBar.frame));
gradient.colors = @[(__bridge id)[UIColor colorWithRed:220.0/255.0 green:220.0/255.0 blue:220.0/255.0 alpha:1.0].CGColor, (__bridge id)[UIColor whiteColor].CGColor];
gradient.startPoint = CGPointMake(0.0, 0.5);
gradient.endPoint = CGPointMake(0.5, 0.5);
UIGraphicsBeginImageContext(gradient.bounds.size);
[gradient renderInContext:UIGraphicsGetCurrentContext()];
UIImage *gradientImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return gradientImage;
}
получить экземпляр UITabBarController
UITabBarController *tabVC = (UITabBarController *)[UIApplication sharedApplication].windows.firstObject.rootViewController;
установить градиент
[UITabBar appearance].backgroundImage = [self drawGradientInView:tabVC];
Я не уверен, что это правильный подход, но он сделал работу для меня.
Для Панели навигации, я подклассы его и настроить, что в layoutSubviews
- (void)layoutSubviews {
[super layoutSubviews];
CAGradientLayer *gradient = [CAGradientLayer layer];
gradient.frame = CGRectMake(0, 0, CGRectGetWidth(self.bounds), CGRectGetHeight(self.bounds) + CGRectGetHeight([UIApplication sharedApplication].statusBarFrame));
gradient.colors = @[(__bridge id)[UIColor colorWithRed:220.0/255.0 green:220.0/255.0 blue:220.0/255.0 alpha:1.0].CGColor, (__bridge id)[UIColor whiteColor].CGColor];
gradient.startPoint = CGPointMake(0.0, 0.5);
gradient.endPoint = CGPointMake(0.5, 0.5);
UIGraphicsBeginImageContext(gradient.bounds.size);
[gradient renderInContext:UIGraphicsGetCurrentContext()];
UIImage *gradientImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
[self setBackgroundImage:gradientImage forBarMetrics:UIBarMetricsDefault];
}
Надеется, что это поможет вам ..
- 1. TabBar Controller и NavigationBar
- 2. Синхронизация цвета фона на TabBar/NavigationBar
- 3. Как изменить цвета TabBar и NavigationBar в форматах Xamarin?
- 4. Как создать UIView с NavigationBar и TabBar
- 5. Scrollview Autolayout с Tabbar и Navigationbar
- 6. Условный запуск навигации NavigationBar или TabBar + NavigationBar
- 7. Скрыть/показать статусBar, TabBar и NavigationBar прикосновением
- 8. Добавить изображение за NavigationBar и TabBar
- 9. IOS pushViewController без tabBar и navigationBar
- 10. TableView в NavigationBar в TabBar Navigation?
- 11. UIBezierPath с градиентом цвета
- 12. Смена цвета NavigationBar и Barbutton
- 13. Использование @dynamic в объективеC
- 14. создать стрелку с градиентом цвета
- 15. Рисование линии с градиентом цвета
- 16. Настройка TabBar в Iphone
- 17. Настройка заголовка NavigationBar асинхронно
- 18. Анимация TabBar изменение цвета
- 19. Использование оттенка и цвета фона для NavigationBar
- 20. TabBar Controller Выбор цвета
- 21. Изменение цвета NavigationBar и системы без оттенков
- 22. Стрелка с градиентом цвета в matplotlib
- 23. NavigationBar внешний вид() (оттенок цвета ..)
- 24. iOS Swift navigationBar и tabBar одинаковый hex, но другой цвет?
- 25. Objective-c NavigationBar изменение цвета?
- 26. Qt Настройка A TabBar
- 27. Настройка Flex (4) Tabbar
- 28. ipad Tabbar Настройка Notworking
- 29. R-график - нормальные кривые с градиентом цвета
- 30. Как сделать теневую коробку с градиентом цвета?
Что вы на самом деле пробовали? –