Wie erstelle ich ein Bild für alle Bildschirmgrößen wie iPhone 5 bis 6 \ 6+ (dasselbe wie 7 \ 7+)?So erstellen Sie ein Bild als Hintergrundbild für alle Bildschirmgrößen
hier die Verwirrung, erstelle ich eine oder ich erstelle ein paar Basisbilder?
Ich lese über die @ 1x, @ 2x, @ 3x. Aber ich bin immer noch verwirrt.
iphone4 iphone5 iphone6 phone6+
Canvas Size(pts) 320x460 320x568 375x667 414x736
Screen Size(Px) 640x960 640 x1136 750x1334 1080x1920
Hier die Ansätze, die ich verwenden werde, bitte helfen Sie mir, sie zu beheben.
Dies ist, was ich auf der Bildschirmgröße jedes iPhone tun werde.
Approach (A):
1.0) erzeugen nur eine Basis Bild der Größe 320x568 (Unterseite auf iphone 5)
1.1) Name dieses Bild: myimage320x568.png, [email protected], myimage320x568 @ 3x.png
ist der richtige Weg? Wird das System das Bild korrekt für iphone5/6/6 + skalieren?
Approach (B)
Erstellen Sie ein Bild von 320x568 für iphone5 Name es. myimage320x568.png
ein Bild von 375x667 für iphone6
Namen erstellen es myimage375x667.png, eine Kopie erstellen und es für iphone6 +
[email protected]ein Bild von 414x736 erstellen nennen
Name es myimage414x736.png, myimage414x736 @ 3x.png
4) Code verwenden iPhone-Modell zu erkennen oder screen.height
if (iphone5){ use myimage320x568.png } else if (iphone 6 or 7) { use myimage375x667.png } else if (iphone 6+ or 7+) { use myImage414x736.png }
ist das korrekt?
// - Update
Dies funktioniert. Aber ich bin mir nicht sicher, was die Basis Bildgröße sollte verwenden?
Verwendung dieses 375x667 (iphone6) oder diese Größe 414x736 (iphone 6+) als Basis-Image
UIGraphicsBeginImageContext(self.view.frame.size)
let img = UIImage(named: "iosWPMain1")
img?.draw(in: self.view.bounds, blendMode: .normal, alpha: 1)
let image: UIImage = UIGraphicsGetImageFromCurrentImageContext()!
UIGraphicsEndImageContext()
self.view.backgroundColor = UIColor(patternImage: image)
Dank
Hallo, ich glaube, Sie werden dieses Bild nicht machen Core Graphics verwenden. Können Sie bitte klarstellen?. Wenn Sie dieses Bild nicht in der App erstellen, überprüfen Sie bitte meine Antwort und lassen Sie es mich wissen, wenn Sie irgendwelche Zweifel haben :). – KrishnaCA