繁体   English   中英

ios-需要带有Alpha但没有半透明模糊的导航栏

[英]ios - Need navigation bar with alpha but NO translucent blur

是否可以将导航栏设置为具有0.80f alpha且没有半透明模糊的黑色? 栏后面是否有视图?

到目前为止,我已经尝试将背景设置为带有Alpha的图像。 但是,背景看起来仍然是不透明的,并且我看不到栏后面的视图...除非我将半透明设置为YES。 但是将半透明设置为YES也会增加模糊,这是我不希望的。

这就是我在做什么:

CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);

UIGraphicsBeginImageContext(rect.size);
CGContextRef context = UIGraphicsGetCurrentContext();

CGContextSetFillColorWithColor(context, [UIColor colorWithWhite:RGBValue(0.0f) alpha:0.80f].CGColor);
CGContextFillRect(context, rect);

UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

[[UINavigationBar appearance] setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];

 UINavigationController *navController = [[UINavigationController alloc]initWithRootViewController:[MyViewController new]];
 [navController.navigationBar setTranslucent:NO];

嗯,我想我解决了。 我只需要将半透明设置为“是”即可工作。

看来 ,如果导航栏设置了背景图像,那么将半透明设置为YES将允许背景图像显示出来,而不会实际增加任何模糊。 这正是我想要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM