2016-08-23 3 views
1

Par exemple, définissez l'arrière-plan de l'iPhone 5 à image1 et le fond de l'iPhone 6 à image2, et une troisième image différente pour iPhone 6+Est-il possible de définir une image de fond différente pour chaque périphérique ios?

Comment puis-je parvenir en utilisant Interface Builder

+0

http: // STAC koverflow.com/q/26028918/3141234 – Alexander

+0

@AlexanderMomchliov merci pour le lien. Savez-vous s'il est possible de définir différentes images d'arrière-plan en utilisant 'Size Classes' dans xcode? – Suhaib

+0

Les classes de taille ne sont pas destinées à différencier les appareils selon la description de votre question. Si vous deviez les utiliser dans votre contexte, cela ne ferait que différencier l'iPhone de l'iPad. – Aaron

Répondre

0

vous pouvez faire Programmatically quelque chose comme ça (ce qui suppose portrait seulement):

enum Device { 

    case iPhone5 
    case iPhone6 
    case iPhone6P 

    static var sizeClass: Device { 

     let screenWidth = UIScreen.mainScreen().bounds.width 

     switch screenWidth { 
     case _ where screenWidth < 375: 
      return .iPhone5 
     case 414: 
      return iPhone6P 
     default: 
      return .iPhone6 
     } 
    } 
} 

ensuite où vous définissez l'image:

switch Device.sizeClass { 
    case .iPhone5: 
     // set image 
    case .iPhone6: 
     // set image 
    case .iPhone6P: 
     // set image 
    } 
+0

Ne gère pas les rotations. – Abizern

+0

Pourquoi ne gérerait-il pas les rotations? – Aaron

+0

parce qu'un iPhone 5s dans le paysage est plus large que 375 points. – Abizern