ステータスバーの上にビューを追加しようとしています。私はこのSO投稿に従っています: iPhoneのステータスバーにビューを追加する
何らかの理由で、ウィンドウを作成して Hidden を NO に設定すると、ビューがステータスバーの上に表示されないように見えます。この実装は ios5.1 でも機能しますか?
ありがとう!
これは私のカスタム UIWindow クラスです:
@implementation StatusBarOverlay
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Place the window on the correct level and position
self.hidden = NO;
self.windowLevel = UIWindowLevelStatusBar+1.0f;
self.frame = [[UIApplication sharedApplication] statusBarFrame];
// Create an image view with an image to make it look like a status bar.
UIImageView *backgroundImageView = [[UIImageView alloc] initWithFrame:self.frame];
backgroundImageView.image = [UIImage imageNamed:@"bar_0.png"];
backgroundImageView.animationImages = [NSArray arrayWithObjects:[UIImage imageNamed:@"bar_1.png"],
[UIImage imageNamed:@"bar_2.png"],
[UIImage imageNamed:@"bar_3.png"],
nil];
backgroundImageView.animationDuration = 0.8;
[backgroundImageView startAnimating];
[self addSubview:backgroundImageView];
}
return self;
}
ビューコントローラーで、新しいウィンドウを作成し、viewDidLoad でこれを呼び出しました。
StatusBarOverlay *overlayWindow = [[StatusBarOverlay alloc] initWithFrame:CGRectZero];
[overlayWindow makeKeyAndVisible];
ただし、ビューはまだ表示されません。理由について何か考えはありますか?