Я пытаюсь использовать drop-in, чтобы иметь Gradient в моем UINavigationBar в моем приложении. Я нашел его в https://github.com/chroman/CRGradientNavigationBarПользовательская панель навигации, предоставляющая мне двойную навигационную панель iN View
Мое приложение - это приложение для панели управления планшетами, в котором каждая вкладка является навигационным контроллером. У меня есть код, заданный как:
UINavigationController *navigationController = [[UINavigationController alloc] initWithNavigationBarClass:[CRGradientNavigationBar class] toolbarClass:nil];
UIColor *firstColor = [UIColor colorWithRed:255.0f/255.0f green:42.0f/255.0f blue:104.0f/255.0f alpha:1.0f];
UIColor *secondColor = [UIColor colorWithRed:255.0f/255.0f green:90.0f/255.0f blue:58.0f/255.0f alpha:1.0f];
NSArray *colors = [NSArray arrayWithObjects:firstColor, secondColor, nil];
// or NSArray *colors = [NSArray arrayWithObjects:(id)UIColorFromRGB(0xf16149).CGColor, (id)UIColorFromRGB(0xf14959).CGColor, nil];
[[CRGradientNavigationBar appearance] setBarTintGradientColors:colors];
[[navigationController navigationBar] setTranslucent:NO]; // Remember, the default value is YES.
[navigationController setViewControllers:@[tabBarController]];
[self.window setRootViewController:navigationController];
Однако я получаю двойную панель навигации, с заголовком и uibarbuttonitems добавляется к 2-м, а не градиент один. Какие-либо предложения?
Это именно то, что у меня есть. Мой корень - это контроллер панели вкладок. На каждой вкладке есть контроллер навигации. Моя проблема заключается в том, что при добавлении этого подкласса NavigationBar из github он не заменяет навигационную панель навигационного контроллера для каждой вкладки, а просто добавляет новую поверх нее. – user717452
Извините, что я вношу изменения в этот комментарий –
В коде, который вы указали, кажется, что контроллер панели вкладок является контроллером вида на вашем навигационном контроллере, а ваш навигационный контроллер настроен на контроллер корневого представления вашего окна: [navigationController setViewControllers: @ [tabBarController]]; [self.window setRootViewController: navigationController]; –