2014-10-21 13 views
5

Ich habe dieses Lernprogramm https://www.youtube.com/watch?v=_36Y6rDcKP0 bei der Verwendung von Image.xcassets zur Anzeige von Vollbild-Bildern auf verschiedenen Geräten verfolgt. Das Erstellen von Startelementen ist sehr einfach, da placeHolders übersichtlich angezeigt werden. Aber, mein Problem ist, wenn Sie ein neues Bildset wie folgt erstellen.Xcode 6 zeigt keine korrekte Bildgröße für iPhone 6-Simulator an

enter image description here

Die Bilder I in jedem Platzhalter platziert haben, ist wie folgt:

Mein Problem ist, wenn ich den IPhone 6 Simulator lade das [email protected] (640 x 960) Bild anstelle des Bildes [email protected] (640 x 1136) für IPhone 6? (Das Bild ist gestreckt). Alle anderen Bildgrößen sind für jedes Gerät korrekt. In der Videoanleitung lädt der IPhone 6 Simulator die Datei [email protected] (640 x 1136). Was mache ich falsch ??

+0

Ich habe das gleiche Problem, wenn Sie eine Lösung gefunden haben, dann informieren Sie mich bitte –

Antwort

0

@ 3x ist für iPhone6 ​​+ und bg-568 @ 2x für retina4 Versuchen mit bg-667 @ 2x

Hoffnung ist, es hilft!

+0

Kein Problem mit dem IPhone 6 plus. Mein Problem ist mit dem iPhone 6. Ich glaube, es sollte das [email protected] (640 x 1136) Bild nicht das 2x bg @ 2x anzeigen.PNG (640 x 960) Bild – pete

+0

iPhone 6 Auflösung ist 750 X 1334 und sollte bg-667 @ 2x benannt werden. – Vincent

+0

Danke für Ihre Hilfe, aber es machte keinen Unterschied. Meine Bilder sehen nun wie folgt aus: 1x bg.png (320 x 640) 2x [email protected] (640 x 960) Netzhaut 4 2x bg-667 @ 2x (750 X 1334) 3x [email protected] (2208 x 1242). Wenn ich die App mit dem iPhone 6-Simulator starte, läuft immer noch das Bild [email protected] (640 x 960). Hast du noch andere Ideen? – pete

-1

die 2x Bilder gestreckt werden, um die Bildschirmgröße erhöht sich aufzunehmen, wenn Sie separate 3x Bilder für Icons und Splash-Screens verwenden, werden die Bilder nicht gestreckt Anzeige erscheinen korrekt

für mehr Detail ... iPhone 6 Plus resolution confusion: Xcode or Apple's website? for development

+0

kein Problem mit iPhone 6plus - es ist das iphone6 ​​Ich habe ein Problem mit. – pete

1

Nach viel herumspielen glaube ich, dass dies ein Fehler ist. Wenn Sie das iPhone 6 ausführen, sollten Ihre Image.xcassets [email protected] (640 x 1136) laden. Xcode sollte dies auf 750 X 1334 skalieren. Aber es lädt nicht immer das iPhone 4 (320 x 640) Bild. Arbeiten rund diesem Problem, das ich zwei Sätze von Image.xcassets erstellt haben (Device Specific) wie folgt:

- backGround.xcassets 
    - 1x (320 x 640) 
    - 2x (640 x 960) 
    - 3x (2208 x 1242) 
    - //(uncheck 4- Retina) 


    - backGroundRetina.xcassets 
    - 2x (640 x 1136) 
    - //(only iPhone checked) 

In (void) {viewDidLoad

if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone){ 

    CGFloat screenHeight = [UIScreen mainScreen].bounds.size.height; 
    CGFloat screenWidth = [UIScreen mainScreen].bounds.size.width; 
    if(screenHeight < screenWidth){ 
     screenHeight = screenWidth; 
    } 

    if (screenHeight > 480 && screenHeight < 736){ 
     NSLog(@"RUNNING IPHONE 5 or 6"); 
      [_backGround setImage:[UIImage imageNamed:@"backGroundRetina"]]; 


    } else NSLog(@"THIS IS NOT IPHONE 6"); 

     // [_backGround setImage:[UIImage imageNamed:@"backGround"]]; will be called 


} 

Ich bin sicher, es gibt andere Wege zur Lösung dieses Problem, aber das ist was für mich funktioniert und ich hoffe, es hilft anderen Menschen mit dem gleichen Problem stecken.

1

Jemand hat in einer anderen Frage ähnlich dazu kommentiert, um eine Launch Screen-Datei hinzuzufügen. Nachdem ich im Grunde alles versucht habe, habe ich eine Launch Screen-Datei hinzugefügt und alles funktioniert. Es befindet sich an der gleichen Stelle, an der Sie App Icons und Launch Images in der Projektdatei einstellen.

enter image description here

Nach Apple "Sie verwenden einen Start XIB oder Storyboard-Datei, um anzuzeigen, dass Ihre App läuft auf iPhone 6 Plus oder iPhone 6." Ich gehe davon aus, dass dies dazu führt, dass es beginnt, die richtigen Bilder zu ziehen, sonst behandelt es es nicht als das richtige Telefon.

Verwandte Themen