2017-02-21 3 views
0

Ich habe ein iPhone Plus, das ich für die Entwicklung verwende. Ich bin besorgt, dass meine App verkrampft wäre oder sonst keine gute Benutzeroberfläche auf 4-Zoll-Handys wie der SE hätte. Gibt es eine Möglichkeit, ein 4-Zoll-Handy am Plus zu simulieren? Ich kann mir vorstellen, dass oben und an den Seiten des Bildschirms Leerstellen entstehen würden.Gibt es eine Möglichkeit, ein kleineres iPhone auf meinem Plus zu simulieren?

Der Simulator funktioniert nicht, da die Skala falsch ist. Alles erscheint größer. Es ist auch schwierig, Berührungsgesten am Simulator zu testen, um zu sehen, ob sie sich natürlich fühlen. Schließlich ist es eine Kamera-App, so dass es nicht auf dem Simulator läuft.

Mir geht es gut mit einer Drittanbieter-App oder Bibliothek, um dies zu tun.

+0

Holen Sie sich ein gebrauchtes 4-Zoll-Telefon? Ich habe mir in dieser Situation das Telefon eines Freundes ausgeliehen. – matt

+0

Das ist die offensichtliche Lösung, aber ich wollte überprüfen, ob es noch einen anderen gibt :) –

+0

OK, aber die Frage nach einer "App oder Bibliothek eines Drittanbieters" verstößt gegen die Stack Overflow-Regeln und es gibt keine Magie, die in Apple integriert ist . Die Vielzahl von iPhone-Bildschirmgrößen/Hardware-Fähigkeiten ist ein Schmerz in den Hintern, aber es gibt kein Wundermittel, um es zu umgehen. – matt

Antwort

0

Sie können ganz einfach simulieren dies einen Container-View-Controller verwenden:

class FourInchViewController: UIViewController { 

    init(child: UIViewController) { 
    self.child = child 
    super.init(nibName: nil, bundle: nil) 

    addChildViewController(child) 
    } 




    // Internals: 

    private let child: UIViewController 

    override func loadView() { 
    let black = UIView() 
    black.backgroundColor = .black 
    view = black 

    view.addSubview(child.view) 
    } 

    override func viewWillLayoutSubviews() { 
    let size = view.bounds.size 
    let w = CGFloat(320), h = CGFloat(568) 
    child.view.frame = CGRect(
     x:(size.width - w)/2, 
     y:size.height - h, 
     width: w, 
     height: h) 
    } 

    required init?(coder aDecoder: NSCoder) { 
    fatalError("init(coder:) has not been implemented") 
    } 
} 

Dann in AppDelegate, setzen Sie diese als Stamm View-Controller.

Verwandte Themen