我一直在环顾四周,似乎答案是肯定的,但这些帖子已经过时了,所以我想知道这是否有所改变。是否可以将状态栏设置为半透明?我试图在多点触控水龙头上做淡入/淡出效果,但状态栏不断变成坚固的黑色。
谢谢!
- 编辑 - 我用于事件转换的代码如下。我已经在-info.plist中将状态栏设置为半透明,但我注意到IB中没有黑色半透明设置(这可能是我的答案:除非你是Apple,否则没有半透明的状态栏。)
-(IBAction)showOptions:(id)sender
{
if ([UIApplication sharedApplication].statusBarHidden == YES) {
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];
[UIView beginAnimations:@"fadeIn" context:nil];
[UIView setAnimationDuration:0.25];
[UIView setAnimationCurve:UIViewAnimationCurveLinear];
optionsView_portrait.alpha = 0.5;
[UIView commitAnimations];
}
else
{
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
[UIView beginAnimations:@"fadeOut" context:nil];
[UIView setAnimationDuration:0.25];
[UIView setAnimationCurve:UIViewAnimationCurveLinear];
optionsView_portrait.alpha = 0.0;
[UIView commitAnimations];
}
}
答案 0 :(得分:14)
设置状态栏样式UIApplication
:
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent
animated:YES];
状态栏为半透明的视图控制器视图也应占据320×480点的整个屏幕尺寸。这样,视图会重置状态栏,前20个像素中的任何内容都将在状态栏下半可见。
如果您的视图中没有任何部分占据前20个像素,则它将显示为黑色。
编辑如果您正在使用iPad,Steven Fisher指出iPad不支持半透明的黑色状态栏。它总是坚实的黑色。
答案 1 :(得分:2)
这样的东西?
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleBlackTranslucent;