ios - 使用 Swift 在 UIView 类中实现 imagePicker

标签 ios swift uiview uiviewcontroller swift4

我正在尝试在我现有的 UIView 类中实现一个 imagePicker。看起来您只能在 ViewController 类中实现 UIImagePickerController。

在实现 imagePicker Controller 时,我在编译前收到“使用未解析的标识符‘dismiss’”错误。

我探索了几种从 UIView 类调用 imagePicker 的方法,但都没有成功。

我探索的一个选项是: 在 UIViewController 类型的 UIView 类中声明了一个变量(填充 UIView 类的父 UIViewController 类)。这导致每次我想添加图像时再次启动 UIViewController 类,这不是我要找的

我这样做的原因是我从使用 UIVIew 类的 UIViewController 类实现了一个 ScrollView 。这些都是 xib 文件实现的类。

有没有人尝试过这样的事情或者有更好的/有效的方法来实现我需要的东西?

请查看下面的错误示例和一些代码示例:

Error from UIView Class

func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
    huntlogEditVC.dismiss(animated: true, completion: nil)
}

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
    let selectedImage = info[UIImagePickerControllerOriginalImage] as! UIImage
    self.imageView.image = selectedImage
    dismiss(animated: true, completion: nil)
}

最佳答案

这对我来说非常好:

 func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {

    if let uierPickedInfo = info[UIImagePickerControllerOriginalImage]as? UIImage {

        guard CIImage(image: userPickedInfo) != nil else {
            fatalError("Cannot convert")
        }
        imageView.image = userPickedInfo
    }
    imagePicker.dismiss(animated: true, completion: nil)
}

关于ios - 使用 Swift 在 UIView 类中实现 imagePicker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49846742/

相关文章:

ios - 通缉解释 : Concept of passing data between UIViewController and UIView

ios - 如何根据其中的元素更改 UIView 高度

ios - 切换标签时 UITabBarController 变黑

ios - CAShapeLayer strokeStart 和 strokeEnd 位置

swift - 错误 "Value of type ' String' has no member 'URLbyAppending' "with my Record Function

arrays - Swift:扩展 [<SomeType<T>?] 来生成 [<T>?] 可能吗?

iphone - 在 arc 下使用 objc_getClassList

ios - Xcode iOS : Convert int to NSString

objective-c - 使用 Swift 语言访问硬件

ios - UIView 的动画透视以向上/远离底部翻转一半