簡體   English   中英

我該如何解決此錯誤:無法識別的選擇器發送到實例(LongPress onUIImageView)

[英]How can i resolve this Error :unrecognised selector sent to instance (LongPress onUIImageView)

原因: '-[[HMIS_ios.ImageViewerVController longPressed:]:無法識別的選擇器發送到實例0x7fe865576d70'

class ImageViewerVController: UIViewController {

@IBOutlet weak var ImageViewer: UIImageView!
var pass = ""
override func viewDidLoad() {
    super.viewDidLoad()
    print("URL:" + pass)
    self.ImageViewer.sd_setImage(with: URL(string:"\(pass)"))

    ImageViewer.isUserInteractionEnabled = true
    let longPressRecognizer = UILongPressGestureRecognizer(target: self, action: Selector(("longPressed:")))
    longPressRecognizer.minimumPressDuration = 0.5
    self.ImageViewer.addGestureRecognizer(longPressRecognizer)
}



@objc func longPressed(sender: UILongPressGestureRecognizer) {
        UIImageWriteToSavedPhotosAlbum(ImageViewer.image!, self, Selector(("image:didFinishSavingWithError:contextInfo:")), nil)
    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

我想使用UILongPressGestureRecognizer將圖片保存在圖庫中

更改

let longPressRecognizer = UILongPressGestureRecognizer(target: self, action: Selector(("longPressed:")))
UIImageWriteToSavedPhotosAlbum(ImageViewer.image!, self, Selector(("image:didFinishSavingWithError:contextInfo:")), nil)

let longPressRecognizer = UILongPressGestureRecognizer(target: self, action: #selector(longPressed(sender:)))
UIImageWriteToSavedPhotosAlbum(ImageViewer.image!, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil)

像這樣更改didFinishSavingWithError方法

@objc func image(_ image: UIImage, didFinishSavingWithError error: NSError?, contextInfo: UnsafeRawPointer) {
    if let error = error {
        print(error.localizedDescription)
    } else {
        print("image saved")
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM