0
我想從白色UINavigatinonBar
導航到透明UINavigationBar
。過渡到帶有透明背景圖像的UINavigationBar導致黑色閃爍
在我的根視圖控制器,這是設置:
self.navigationController.navigationBar.hidden = NO;
[self.navigationController.navigationBar setBarTintColor:[UIColor whiteColor]];
[self.navigationController.navigationBar setTranslucent:NO];
重要的是,它保持不透亮。 這是第二個視圖控制器的設置:
// set title of navbar
self.title = [self.data objectForKey:@"title"];
[self.navigationController.navigationBar setTitleTextAttributes:@{NSForegroundColorAttributeName : [UIColor whiteColor]}];
//
// IMPORTANT PART: make the nav bar transaparent - no prerequisites.
self.navigationController.navigationBar.barStyle = UIBarStyleDefault;
[self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
self.navigationController.navigationBar.shadowImage = [UIImage new];
self.navigationController.navigationBar.translucent = YES;
// set custom back button
UIButton *backButton = [[UIButton alloc] initWithFrame: CGRectMake(16, 31, 22, 20)];
UIImage *backImage = [UIImage imageNamed:@"backButtonDetail"];
[backButton setBackgroundImage:backImage forState:UIControlStateNormal];
[backButton setTitle:@"" forState:UIControlStateNormal];
[backButton addTarget:self action:@selector(popBack) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *backButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];
self.navigationItem.leftBarButtonItem = backButtonItem;
這正好差不多好了,除了動畫:
正如你所看到的,當我製作動畫的背景變成黑色。我想淡入目標顏色的白色。它現在從黑色背景開始動畫。
我嘗試在導航欄下方設置自定義UIView
,但那不起作用。
我很失落如何現在這個和任何幫助將不勝感激。
嘗試放置UIImageView,並在第二個視圖控制器中將其顏色設置爲白色。確保它填充導航欄後面,以便導航欄可用。 – 2014-12-11 06:21:13
你有沒有找到解決你的問題?謝謝。 – dorin 2015-04-23 11:48:01
還沒有..我會很高興與誰可以給我一個答案的人! – bdv 2015-05-01 12:18:35