Иконки на UIImage исчезают - PullRequest
0 голосов
/ 25 января 2019

У меня проблемы с иконками, которые я ставлю по умолчанию при запуске приложения.Они не появляются, но когда я заменяю его фотографией, сделанной с другого контроллера, она не исчезает.Вот часть моего кода

Я пытался установить некоторые условия, но пока не работает.

//Default images
    let defImage1: UIImage? = UIImage(named: "media")
    let defImage2: UIImage? = UIImage(named: "media2")

class PDFViewViewController: UIViewController, UITextFieldDelegate, MFMailComposeViewControllerDelegate {


    //Asset image 
    var image: UIImage? = nil
    var secondImage: UIImage? = nil
    var codigo = UserDefaults.standard.object(forKey: "code") as? String

    //UI Conections
    @IBOutlet weak var productPhoto: UIImageView!
    @IBOutlet weak var barcodePhoto: UIImageView!
    @IBOutlet weak var invNumb: UITextField!  

override func viewDidLoad() {


    super.viewDidLoad()

        //declaring default image to image view

        productPhoto.image = defImage1
        barcodePhoto.image = defImage2

        //Assign new image to the view

        invNumb.delegate = self

        if self.invNumb != nil && self.productPhoto != defImage1 {
            if image != UIImage(named: "media") {              
               saveImage(image: self.image!, withName: "assetPicture") 
            }     
        } else {
            productPhoto.image = defImage1
        }

        let theSavedImage = getImage(imageName: "assetPicture")
        productPhoto.image = theSavedImage

        //Assign values to fields

        invNumb.text = codigo

        if barcodePhoto != nil {
            if productPhoto != nil {
                saveImage(image: self.secondImage!, withName: "barcodePicture")               
            }

        } else {
            barcodePhoto.image = defImage2
        }

        let theSecondSavedImage = getImage(imageName: "barcodePicture")
        barcodePhoto.image = theSecondSavedImage
    }

    //Save asset image function
    func saveImage(image: UIImage, withName name: String) {

        let imageData = NSData(data: UIImageJPEGRepresentation(image, 400)!)
        let paths =     NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory,  FileManager.SearchPathDomainMask.userDomainMask, true)
    let docs = paths[0] as NSString
    let name = name
    let fullPath = docs.appendingPathComponent(name)
    _ = imageData.write(toFile: fullPath, atomically: true)

    }

Когда вы нажмете на изображение, оно откроет камеру и сохранит фотографию, сделанную в окне просмотра изображения, если у вас нет фотографии, тогда она останется в качестве изображения.Но когда вы нажали одно изображение, другое исчезает.

...