2014-12-10 31 views
8

Ich entwickelte App in Xcode 5 für iOS 7 auf iPhone 5-Zoll-Storyboard. Ich bereitete meine App und ihre Knöpfe, Bilder und andere Sachen vor, um iPhone 5 Bildschirmgröße zu passen, und programmierte dann programmatisch optimierte App, um iPhone 4 und 4s zu passen.Xcode 6 skaliert App automatisch für iPhone 6 und 6 plus

Und dann kam Xcode 6, und zwei neue Geräte, iPhone 6 und iPhone 6 Plus. Ich dachte, dass ich wieder einige Stunden damit verbringen muss, App für diese Beschlüsse programmatisch zu optimieren.

Aber ich habe versucht, meine App auf meinem neuen iPhone 6 laufen und seltsame Sache passiert ist. App selbst hat alles für mich gemacht. Alles war in der richtigen Position und in der richtigen Größe und ich habe nichts gemacht.

Ich sah, dass Xcode 6 jetzt Größenklassen verwendet, um App für mehrere Geräte zu entwickeln.

Aber ich verwende keine Größenklassen und Auto-Layout in meinem Projekt und es funktioniert?

Ich habe dann ein neues Projekt geöffnet. In meinem neuen Projekt funktioniert die Größenanpassung nicht mehr so. Es wird also nicht automatisch die Größe meiner Schaltflächen, Ansichten und anderen Dinge ändern.

Hat jemand eine Idee was passiert?

+1

Das System skaliert Ihre Anwendung automatisch auf die neuen Bildschirmgrößen, wenn Sie nicht die richtigen Assets in den neuen Größen vorbereitet haben. Ihre App wird also funktionieren, aber nicht in der Größe einer nativen 6/6 + -Anwendung. –

+0

@jshier also ist es besser für mich, mit Size Classes zu arbeiten? Und was passiert, wenn ich ein Spiel in Sprite Kit entwickle? Systeme werden automatisch Größen von Sprites ändern? – MOzeb

+1

Verwenden von Größenklassen ist für iOS nicht erforderlich, um das Zoomen Ihrer App zu beenden. Sie benötigen nur ein Startbild der entsprechenden Auflösung. –

Antwort

15

Wenn Sie kein Launch Story Board verwenden oder Launch Images für die neuen iPhone 6 Größen hinzufügen, wird der gesamte Bildschirm erweitert, um die neue Gerätegröße zu füllen (dasselbe passiert beim Aktivieren der Zugänglichkeitseinstellungen). Der iPhone 6 Benutzer wird größere Schriftarten, Bilder usw. bemerken.

Dies ist, was passiert. Das Problem ist, dass Sie keinen zusätzlichen Bildschirmplatz (zusätzliche Pixel) nutzen können. Wenn das bei dir cool ist, dann behalte es, aber wenn du schließlich deine App optimierst, um diese zusätzliche Immobilie zu nutzen, werden sich die iPhone 6-Nutzer plötzlich beschweren, dass die Schriftgröße kleiner geworden ist, wenn sie aufhört, automatisch zu zoomen.

Sie sollten die Zeit nutzen, um das iPhone 6 zu optimieren und Launch-Images hinzuzufügen (oder Storyboard starten, wenn nur iOS 8+ unterstützt wird) und die Notiz "Optimiert für iPhone 6" zu Ihrer App-Beschreibung hinzufügen.

+0

jetzt verstehe ich ... So funktioniert es nur für den Fall, dass Sie Bilder hinzufügen ... Aber für mich ist es besser zu zoomen, wie ich Spiele entwickeln, es sieht wirklich cool auf größeren Geräten .. – MOzeb

+0

Hallo Marcus, ich habe eine Start-Xib für die richtige Skalierung für das iPhone 6/6 + gestartet, aber beim Lesen eines anderen Threads hier: http://StackOverflow.com/Questions/26210622/optimized-for-iphone-6-info- Text-in-App-Store, die Person redet über @ 3x, und ich bin verwirrt darüber. Können Sie näher erläutern, worüber die Person spricht? Danke – Pangu

+0

Die 3x Bilder haben nichts damit zu tun, die * Diese App ist optimiert für iPhone 5, iPhone 6 und iPhone 6 Plus. * Text. Hier ist eine meiner Apps. Keine Bilder über 2x, aber ich habe jedes benötigte Startbild, und es [sagt, es ist optimiert] (https://itunes.apple.com/us/app/sound-it-out-spelling/id916263370?mt=8). Wenn Sie 2x skalierte Bilder für Retina-Geräte verstehen, hat die Retina von iPhone 6 Plus eine noch höhere Skalierung von 3x. Richten Sie alle Bildansichten auf Ihrem Start-Storyboard so ein, dass alle Skalierungsgrößen automatisch skaliert oder einbezogen werden, damit sie die richtige Größe haben. –

-1

Wenn Sie Ihre App vor iOS 8 nicht berühren, wird sie automatisch auf iPhone 6 und 6 Plus Geräten funktionieren. Aber wenn Sie Größenklassen verwenden möchten (wie Sie sollten), müssen Sie die automatischen Layout-Einschränkungen hinzufügen, um alles gut zu machen.

+0

Was? passiert in iOS9? Meine iphone5 App funktioniert gut auf einem iPhone 6, wenn es im gezoomten Modus ist. Im Standardmodus wird es oben rechts "zerquetscht". – OneGuyInDc