it-swarm.com.de

Wie kann ich ein Hintergrundbild in Xcode mit swift einstellen?

Wie kann ich ein Hintergrundbild für meinen Hauptansicht-Controller in Xcode 6 mit swift einstellen? Ich weiß, dass Sie dies im Assistenten-Editor wie folgt ausführen können: 

override func viewDidLoad() {
    super.viewDidLoad()
    view.backgroundColor = UIColor.yellowColor()
}

Wie lautet der Code, um den Hintergrund für ein Bild festzulegen, das sich in meinem Ordner für Assets befindet?

40
GuiGui23
override func viewDidLoad() {
    super.viewDidLoad()
    self.view.backgroundColor = UIColor(patternImage: UIImage(named: "background.png"))
}
86
Hayley Guillou

Ich bin ein Anfänger der iOS-Entwicklung, daher möchte ich alle Informationen teilen, die ich in diesem Abschnitt erhalten habe. 

Erstellen Sie zunächst aus Bildressourcen (images.xcassets) einen Bildsatz.

Laut Dokumentation Hier werden alle Größen benötigt, um ein Hintergrundbild zu erstellen.

For iPhone 5:
   640 x 1136

   For iPhone 6:
   750 x 1334 (@2x) for portrait
   1334 x 750 (@2x) for landscape

   For iPhone 6 Plus:
   1242 x 2208 (@3x) for portrait
   2208 x 1242 (@3x) for landscape

   iPhone 4s (@2x)      
   640 x 960

   iPad and iPad mini (@2x) 
   1536 x 2048 (portrait)
   2048 x 1536 (landscape)

   iPad 2 and iPad mini (@1x)
   768 x 1024 (portrait)
   1024 x 768 (landscape)

   iPad Pro (@2x)
   2048 x 2732 (portrait)
   2732 x 2048 (landscape)

rufen Sie das Bild background auf. Wir können ein Bild aus Image-Assets aufrufen, indem Sie diese Methode UIImage(named: "background") verwenden. Hier ist der vollständige Codebeispiel 

  override func viewDidLoad() {
          super.viewDidLoad()
             assignbackground()
            // Do any additional setup after loading the view.
        }

  func assignbackground(){
        let background = UIImage(named: "background")

        var imageView : UIImageView!
        imageView = UIImageView(frame: view.bounds)
        imageView.contentMode =  UIViewContentMode.ScaleAspectFill
        imageView.clipsToBounds = true
        imageView.image = background
        imageView.center = view.center
        view.addSubview(imageView)
        self.view.sendSubviewToBack(imageView)
    }
38
Mina Fawzy
override func viewDidLoad() {

    let backgroundImage = UIImageView(frame: UIScreen.main.bounds)
    backgroundImage.image = UIImage(named: "bg_image")
    backgroundImage.contentMode = UIViewContentMode.scaleAspectfill
    self.view.insertSubview(backgroundImage, at: 0)

}
17
User9527

Sie können dies auch versuchen, was wirklich eine Kombination der vorherigen Antworten von anderen Postern ist:

    let backgroundImage = UIImageView(frame: UIScreen.main.bounds)
    backgroundImage.image = UIImage(named: "RubberMat")
    backgroundImage.contentMode =  UIViewContentMode.scaleAspectFill
    self.view.insertSubview(backgroundImage, at: 0)
11
Mark Thacker

Swift 4

view.layer.contents = #imageLiteral (resourceName: "webbg"). cgImage

6
Ali

Für Swift 4

let backgroundImage = UIImageView(frame: UIScreen.main.bounds)
backgroundImage.image = UIImage(named: "bg_name.png")
backgroundImage.contentMode = UIViewContentMode.scaleAspectFill
self.view.insertSubview(backgroundImage, at: 0)
5
Iryna Batvina

Hintergrundbild von API in Swift 4 (mit Kingfisher ):

import UIKit
import Kingfisher

extension UIView {

func addBackgroundImage(imgUrl: String, placeHolder: String){
    let backgroundImage = UIImageView(frame: self.bounds)
    backgroundImage.kf.setImage(with: URL(string: imgUrl), placeholder: UIImage(named: placeHolder))
    backgroundImage.contentMode = UIViewContentMode.scaleAspectFill
    self.insertSubview(backgroundImage, at: 0)

}
}

Verwendungszweck:

someview.addBackgroundImage(imgUrl: "yourImgUrl", placeHolder: "placeHolderName")
0
babak