Putting ein UIView oder UIWindow Statusbar oben

Mein Ziel ist, zeichnen Sie eine unsichtbare Schaltfläche über die Statusleiste auf der Oberseite meiner iPhone app (dimension 320*20 Pixel).

Egal was ich versuche, etwas buggy ist:

  1. Zum Beispiel, habe ich versucht, eine neue Ansicht erstellen. Wenn ich will, um die Ansicht zu platzieren auf der Oberseite meiner app, es verschwindet immer hinter der status-bar, anstatt davor!

  2. Fand ich eine tolle Idee auf Stackoverflow:
    Hinzufügen UIView Über Alle Anderen Ansichten, Einschließlich Der StatusBar
    Auch wenn eine zweite UIWindow ist nicht zu empfehlen, ich habe versucht, es zu implementieren. Es funktionierte, wie ich wollte, bis zu dem Augenblick, bemerkte ich ein problem: die Tastatur erscheint nicht mehr, wenn benötigt (z.B. beim Klick in ein Textfeld)!

Wie kann ich eventuell dieses Problem beheben? Oder gibt es eine bessere Lösung für mein problem? Dies ist mein code für das erzeugen des zweiten Fensters:

//Create window
statusWindow = [[UIWindow alloc] initWithFrame:CGRectMake(0,0,320,20)];
statusWindow.windowLevel = UIWindowLevelStatusBar;
[statusWindow makeKeyAndVisible];

//Create statusBarButton
statusBarButton = [UIButton buttonWithType:UIButtonTypeCustom];
CGRect buttonFrame2 = statusBarButton.frame;
buttonFrame2.size = CGSizeMake(320,20);
statusBarButton.frame = buttonFrame2;
[statusBarButton addTarget:self action:@selector(goTop) forControlEvents:UIControlEventTouchUpInside]; 

//Place button into the new window
[statusWindow addSubview:statusBarButton];
InformationsquelleAutor andreas | 2010-11-23
Schreibe einen Kommentar