2015-02-05 16 views
9

Ho una vista di avviso che si apre quando l'utente preme il pulsante Aggiungi. Come aggiungo un'immagine alla visualizzazione degli avvisi?Aggiungi immagine alla visualizzazione avvisi

Ho aggiunto un codice che ho preso riferimento allo stack overflow. pulsante My salvare viene sostituito con l'immagine e l'immagine sembra essere di colore blu ...

Codice in materia di Alert View

var alert = UIAlertController(title: "Spring Element \(springNumber)", 
      message: "Add spring properties", 
      preferredStyle: .Alert) 

     let saveAction = UIAlertAction(title: "Save", 
      style: .Default) { (action: UIAlertAction!) -> Void in 

       let textField1 = alert.textFields![0] as UITextField 
       self.txtField1.append(textField1.text) 
       self.tableView.reloadData() 

       let textField2 = alert.textFields![1] as UITextField 
       self.txtField2.append(textField2.text) 
       self.tableView.reloadData() 

       println(self.txtField1) 
       println(self.txtField2) 
     } 

     let cancelAction = UIAlertAction(title: "Cancel", 
      style: .Default) { (action: UIAlertAction!) -> Void in 
     } 

     //adding textfield1 
     alert.addTextFieldWithConfigurationHandler { 
      (textField1: UITextField!) -> Void in 
      textField1.placeholder = "Force" 
     } 

     //adding textfield2 
     alert.addTextFieldWithConfigurationHandler { 
      (textField2: UITextField!) -> Void in 
      textField2.placeholder = "Stiffness" 
     } 

     alert.addAction(saveAction) 
     alert.addAction(cancelAction) 

     presentViewController(alert, 
      animated: true, 
      completion: nil) 

Codice in materia di vista

let image = UIImage(named: "springAtWall") 
    saveAction.setValue(image, forKey: "image") 
    alert.addAction(saveAction) 

risposta

21

Sì, puoi aggiungere un UIImageView come sottoview alla tua alertview.

var imageView = UIImageView(frame: CGRectMake(220, 10, 40, 40)) 
imageView.image = yourImage 

alert.view.addSubview(imageView) 
+0

ho sostituito yourImage con il nome della mia immagine. Dà un errore: uso dell'identificatore non risolto 'springAtWall'. C'è un errore nell'ultima riga; 'UIAlerController' non ha un membro chiamato 'addSubView'. –

+0

Ho modificato la mia risposta. Devi chiamare alert.view.addSubview. – Christian

+0

Funziona. Questa sottoview appare sul lato destro del titolo della vista di avviso e l'immagine visualizzata è troppo piccola. C'è un modo per posizionarlo sotto il messaggio? E voglio aumentare anche la dimensione. Cosa rappresentano i numeri (220, 10, 40, 40)? –

2

Swift 4:

var imageView = UIImageView(frame: CGRect(x: 220, y: 10, width: 40, height: 40)) 
imageView.image = <#yourImage#> 
alert.view.addSubview(imageView)