UIImage上的图标消失

时间:2019-01-25 17:45:36

标签: swift uiimageview uiimage

启动该应用程序时,我默认使用的图标出现问题。它们不会出现,但是当我用从另一个控制器拍摄的照片代替它时,它不会消失。这是我的代码的一部分

我尝试设置一些条件,但到目前为止不起作用。

//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)

    }

点击图像时,它将打开相机并保存您拍摄的照片(如果未拍摄任何照片),然后将其保留为defImage。但是,当您点击一个图像时,另一个图像就消失了。

0 个答案:

没有答案