Meine alte iOS-App funktioniert gut in allen iPhone-Versionen (außer iPhone X-Modell). Ich stoße auf den iPhone X-Simulator und sehe, dass sich einige der Bildschirme am unteren Bildschirmrand des iPhone X überlappen. Meine Apps alle uiviewcontrollers programmgesteuert erstellt, nicht von Storyboard entwickelt. Also habe ich in allen View-Controllern (self.view.frame) nach seiner Frame-Größe gesucht. In iPhoneX gibt es einen sicheren Schutzbereich, um in Storyboard zu entwerfen. Aber wie berechne ich den Sicherheitsbereich in Runtime. Bei der Suche nach Google gibt es eine Probe, um einen sicheren Schutzbereich zu finden, der von iOS11 unterstützt wird. Aber ich möchte meine App von ios9 ausführen? Ich habe viele uiviewcontrollers in meinem Projekt. Also kann mir jemand einen einfachsten Weg, um diese Aufgabe zu tun sagen?Alte App für das iPhone X zu unterstützen?
Antwort
Eine Möglichkeit, eine Laufzeit Update für iPhone X Layout-Probleme zu alt (pre-Storyboard-Handbuch Layout) Anwendungen (mit alten pre-11 Deployment-Zielen) hinzuzufügen, Objective-C-Code hinzuzufügen, ähnlich wie:
CGRect r0 = self.view.frame;
CGRect r1 = r0;
if (@available(iOS 11.0, *)) {
r1 = self.view.safeAreaLayoutGuide.layoutFrame;
}
if (r1.size.height < (r0.size.height - 20.0)) {
// fix top and bottom view overlap outside safe area here
}
innerhalb der ViewWillLayoutSubviews-Methode jedes UIViewControllers.
Mit dem @ available check wird dieser Code unter iOS-Versionen vor iOS 11 sicher verwendet.
Ich habe xcode8.2 .. Ich werde neue iOS-App und UI-Design mit Storyboard erstellen ... Ich möchte meine Anwendung ohne Problem in iPhoneX ausführen. Wie kann ich es mit xcode8.2 machen? Wird es möglich sein? oder ich brauche xcode9. – vinoth87
Sie benötigen Xcode 9, um das iPhone X zu unterstützen. Da Xcode 8.x das neue Gerät nicht kennt und die App schwarze Balken oben und unten am Ansichtsport der App hat. – sn3ek
- 1. Ändern Höhe des Rahmens für iPhone X
- 2. Wie kann Java DAO alte Datenbankschemaversionen unterstützen
- 3. Wie wichtig ist es, alte Browser zu unterstützen?
- 4. UIView Höhe nicht für iPhone X erweitern
- 5. OS X Dock in einer iPhone App?
- 6. Migrate App auf iOS 11 für Iphone X
- 7. iphone build app für iphone 3gs und iphone4
- 8. Port eine iPhone App zu Mac OS X
- 9. Flash-App für iPhone
- 10. Ist das ein gutes Design für mehrsprachige Systemtexte, um x Anzahl der Sprachen zu unterstützen?
- 11. Seitenverhältnis von Hintergrund-Bild für iPhone X
- 12. Erstellen eines bestimmten Storyboards für das iPhone X
- 13. Pläne für Sharepoint, um MVC zu unterstützen?
- 14. Gibt es eine Möglichkeit, Bilder einfach in Apps zu verwenden, die das iPhone 5 unterstützen?
- 15. Ist es möglich, iPhone X und iOS 8 in demselben Projekt zu unterstützen?
- 16. iPhone X Topbar Problem
- 17. Wie man Python-Module für PyPI organisiert, um 2.x und 3.x zu unterstützen
- 18. Wie funktioniert Update für iPhone App?
- 19. Raw Depth Karte SDK für IPhone X
- 20. Unterstützen iPhone/Android-Browser CSS @ media Handheld?
- 21. alte targetSdkVersion für neue Geräte
- 22. iPhone X Vollbild Ausgabe
- 23. iPhone X Storyboard starten
- 24. Understanding NSHTTPCookieStorage für das iPhone
- 25. iPhone App-Lokalisierung für Store
- 26. Eyetracking für das iPhone?
- 27. Welche Schriftart kann ich verwenden, um alle Skripte (Latein, Kanji, Kyrillisch usw.) für das iPhone zu unterstützen?
- 28. udocumented apis für das iPhone, das durch
- 29. mySQL-Datenbank zu iPhone App
- 30. SIP Server für iPhone App
Wie wäre es mit iPhone 8? – SPlatten
Haben Sie Splash Screen Image von 1125px × 2436px hinzugefügt? – Abhishek
hinzugefügt Splash-Bildschirm Bild. Aber immer noch Probleme angefallen. – vinoth87