2016-12-12 6 views
0

ich ein zweites Fenster habe ich erstellen Sie eine benutzerdefinierte Benachrichtigung in meiner app zeigen:Zweite UIWindow erhalten keine Berührungsereignisse

@property (strong, nonatomic) UIWindow *window2; 

Und das ist, wie ich es erscheinen zu lassen:

self.window2 = [[UIWindow alloc] initWithFrame:CGRectMake(0, 0, SCREEN_BOUNDS.size.width, 50)]; 
self.window2.backgroundColor = [UIColor blackColor]; 
self.window2.windowLevel = UIWindowLevelAlert; 
self.window2.rootViewController = custonViewController; 
[self.window2 makeKeyAndVisible]; 

Die Problem ist, dass kein Berührungsereignis innerhalb von custonViewController funktioniert. Ich habe alles versucht, sogar Unterklasse UIWindow und überschreiben die (void)sendEvent:(UIEvent *)event. Aber es funktioniert auch nicht.

Wie kann ich meinem Appledeledat mitteilen, dass das Fenster 2 berührt/angetippt wurde? Irgendwelche Ideen?

+0

Sie machen die Fenstergröße klein und aus dem Bildschirm. Warum erwarten Sie, dass Berührungen funktionieren? – rmaddy

+0

NEIN ICH NICHT. ES ERSCHEINT IM BILDSCHIRM, ich habe gerade -50 aus Versehen eingegeben. Ich habe es gerade korrigiert. –

+1

Bitte hör auf zu GELEBEN. Sie haben immer noch ein Problem, dass die Höhe Ihres Fensters nur 50 Punkte hoch ist. Ist das wirklich alles was du willst? Das deckt die Statusleiste kaum ab. – rmaddy

Antwort

0

Vergesst nicht. Ich habe herausgefunden, was passiert ist. Ich animierte das UIWindow automatisch zu erscheinen und zu verschwinden, in einer Folge von Animationen nach der Fertigstellung von der vorherigen mit Verzögerung mit einigen Sekunden eingestellt. Während der gesamten Animationssequenz wurden alle Berührungsereignisse gesperrt. Also habe ich die Animationen getrennt und in asynchrone Threads eingefügt, damit sie normalerweise Berührungen erhalten. tschüss!

Verwandte Themen