Pregunta ¿Cómo se crea un UIImage View Programmatically - Swift


Intento crear un UIImage View programáticamente, tengo una nueva vista e intenté hacer esto

let imageName = "yourImage.png"
yourview.backgroundColor = UIColor.colorWithPatternImage(UIImage(named:imageName))

esto no funcionó porque no sé lo que debería ser tu vista en la segunda línea.

Pregunta: ¿Cómo hago que aparezca UIImageView en la pantalla codificándolo en lugar de hacerlo en el guión gráfico?


75
2017-10-26 02:59


origen


Respuestas:


Primero creas un UIImage desde su archivo de imagen, luego cree un UIImageView a partir de ese:

let imageName = "yourImage.png"
let image = UIImage(named: imageName)
let imageView = UIImageView(image: image!)

Finalmente, deberás dar imageView un marco y agréguele su vista para que sea visible:

imageView.frame = CGRect(x: 0, y: 0, width: 100, height: 200)
view.addSubview(imageView)

194
2017-10-26 03:05



Primero crea UIImageView y luego agrega la imagen en UIImageView.

    var imageView : UIImageView
    imageView  = UIImageView(frame:CGRectMake(10, 50, 100, 300));
    imageView.image = UIImage(named:"image.jpg")
    self.view.addSubview(imageView)

30
2018-03-25 17:52



Esta respuesta es una actualización de Swift 3.

Así es como puede agregar una vista de imagen programáticamente donde puede controlar las restricciones.

Class ViewController: UIViewController {

    let someImageView: UIImageView = {
       let theImageView = UIImageView()
       theImageView.image = UIImage(named: "yourImage.png")
       theImageView.translatesAutoresizingMaskIntoConstraints = false //You need to call this property so the image is added to your view
       return theImageView
    }()

    override func viewDidLoad() {
       super.viewDidLoad()

       view.addSubview(someImageView) //This add it the view controller without constraints
       someImageViewConstraints() //This function is outside the viewDidLoad function that controls the constraints
    }

    // do not forget the `.isActive = true` after every constraint
    func someImageViewConstraints() {
        someImageView.widthAnchor.constraint(equalToConstant: 180).isActive = true
        someImageView.heightAnchor.constraint(equalToConstant: 180).isActive = true
        someImageView.centerXAnchor.constraint(equalTo: view.centerXAnchor).isActive = true
        someImageView.centerYAnchor.constraint(equalTo: view.centerYAnchor, constant: 28).isActive = true
    }

}

15
2017-12-26 09:45



Puedes usar arriba en una línea.

  let imageView = UIImageView(image: UIImage(named: "yourImage.png")!)

11
2017-10-08 05:40



Gracias, MEnnabah, solo para agregar a su código donde falta el = firmar en la declaración declaración:

let someImageView: UIImageView = {
   let theImageView = UIImageView()
   theImageView.image = UIImage(named: "yourImage.png")
   theImageView.translatesAutoresizingMaskIntoConstraints = false //You need to call this property so the image is added to your view
   return theImageView
}()

Todo lo demás es perfecto para Swift 3.


6
2018-03-13 16:42



En Swift 3.0:

var imageView : UIImageView
    imageView  = UIImageView(frame:CGRect(x:10, y:50, width:100, height:300));
    imageView.image = UIImage(named:"Test.jpeg")
    self.view.addSubview(imageView)

4
2018-05-26 08:32