Frage

Das hier ist seltsam.Ich habe eine komplexere Anwendung, auf die ich hier nicht näher eingehen werde, aber eine ihrer Funktionen ist, dass sie jedes Mal, wenn eine Verbindung zum Server hergestellt wird, eine durchsichtige schwarze Ansicht über alles legt.

Ich füge diese Ansicht wie folgt hinzu:

MyAppDelegate *appDelegate = (MyAppDelegate *)app.delegate;
[appDelegate.window addSubview:http.progressView.view];

Wenn ich es im Simulator oder auf dem Gerät ausführe, funktioniert alles gut:Der schwarze Bildschirm überlagert wie erwartet alles andere.

Das Seltsame daran ist folgendes:Ich archiviere die Anwendung, packe sie als .ipa-Datei und installiere sie dann mit iTunes (oder TestFlight) auf dem Telefon.Wenn ich das mache, wird die schwarze Überlagerung an manchen Stellen um etwa 10 Pixel nach oben rechts auf dem Bildschirm versetzt, wie z frame.origin.x wird 10 sein und frame.origin.y wird -10 sein.

Weiß jemand, was beim Erstellen der Anwendungen als .ipa unterschiedlich sein kann, wodurch sie sich so anders verhalten?Ich befürchte, dass dies auch dann nicht passiert, wenn ich es für die Bereitstellung baue.

War es hilfreich?

Lösung

Der Unterschied besteht darin, dass es während der Archivierung mit den Release-Einstellungen erstellt wird (z. B.Optimierungsgrad s normalerweise vs. Optimierungsgrad 0 zum Debuggen).

Sie legen nicht den Rahmen fest http.progressView.view was wahrscheinlich die Probleme verursacht.Stellen Sie es so ein, dass es das ist applicationFrame des Fensters UIScreen:

http.progressView.view.frame = appDelegate.window.screen.applicationFrame;
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top