UIImagePickerController 扩展发现失败并出现错误:(null)

2024-04-19

我试图在我的 ViewController 上实现一个 ImagePicker,但结果发现它呈现了一个空白的 ImagePicker 控制器并且UIImagePickerController extension discovery failed with error: (null)控制台上的消息。

我不知道我做错了什么,我也没有找到有关此事的信息。不过,我注意到的一件事是 PickerView 的显示时间有点太长了。

ImagePicker相关的代码如下:

private let imagePicker = UIImagePickerController()

private func setupImagePicker() {
        imagePicker.sourceType = .photoLibrary
        imagePicker.allowsEditing = false
        imagePicker.delegate = self
        imagePicker.mediaTypes = ["public.image"]
}

    @objc private func launchImagePicker() {

        let photos = PHPhotoLibrary.authorizationStatus()
        if photos == .notDetermined {
            PHPhotoLibrary.requestAuthorization({ [weak self] status in
                DispatchQueue.main.async {
                    if status == .authorized, let picker = self?.imagePicker {
                        self?.present(picker, animated: true, completion: nil)
                    } else {
                        self?.present(URealtorUtils.getAlert(message: "You have to authorize photo library access in order to upload a photo"), animated: true, completion: nil)
                    }
                }
            })
        } else if photos == .authorized {
            present(imagePicker, animated: true, completion: nil)
        }
    }

extension MyController: UIImagePickerControllerDelegate, UINavigationControllerDelegate {

    func imagePickerController(_ picker: UIImagePickerController,
                               didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey: Any]) {
        if let image = info[UIImagePickerController.InfoKey.originalImage] as? UIImage {
            self.viewModel.setPropertyImage(image)
        }
        dismiss(animated: true, completion: nil)
    }

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

这是当 PickerView 出现时我得到的屏幕截图:


我检查了详细信息,您的实施没有问题。 我还在这里查看了苹果的官方样本。https://developer.apple.com/documentation/uikit/uiimagepickercontroller/customizing_an_image_picker_controller https://developer.apple.com/documentation/uikit/uiimagepickercontroller/customizing_an_image_picker_controller结果一样!

最后,这是与iOS模拟器(版本11.3.1)相关的问题。 仅供参考,我发现 iPhone 11 Pro Max 在某些以前的版本中无法使用,但 iPhone 8 和其他一些版本可以使用。 我只是希望你们不要在这上面浪费时间。前进。

Thanks.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

UIImagePickerController 扩展发现失败并出现错误:(null) 的相关文章

  • Firebase持久化,清除Firebase缓存

    我的应用程序使用 Firebase 来同步和恢复数据 我用setValue withCompletionBlock 插入 更新和删除 Firebase 对象的方法 每当有 CoreData 保存时就会调用此方法 从而将我的所有本地更改同步到
  • Xcode:将信息从 UITableViewController 传递到 UIViewController

    我有一个 UIViewController 它应该根据 UITableViewController 中按下的单元格向我显示详细信息 目前我正在给他们讲一个续集 override func prepare for segue UIStoryb
  • 检测 iPhone 上的长按

    我正在开发一个 iPhone 应用程序 它要求我检查是否已点击按钮并按住 6 秒 然后触发一个播放某种声音的动作 我应该如何检测这个 6 秒的点击 另一方面 用户还可以持续点击按钮 6 秒 然后会触发相同的操作 我应该如何处理多次点击 我怎
  • 滚动 swiftUI 列表时,未调用单元格的任务修改器。怎么修?

    我写了一个异步图像视图 with swiftui 并在列表单元格中使用 AsyncImgView 使用任务修饰符在 Img 出现时从缓存或网络下载 Img 在 iOS16 之前一切正常 但在iOS16我发现当我滚动列表新细胞的AsyncIm
  • UITableView:popViewController 并将行索引保留到父控制器中?

    我有以下配置 一个视图控制器父控制器包含一个TableView父表带有自定义单元格 每个单元格显示 2 个标签 一个视图控制器子控制器包含一个TableView子表 当用户单击controllerParent的某个单元格时 会显示此视图 c
  • 使用单个共享后台线程进行 iOS 数据处理?

    我有一个应用程序 可以从网络下载大量资源 并对每个资源进行一些处理 我不希望这项工作发生在主线程上 但它非常轻量级且优先级低 因此所有这些都可以真正发生在同一个共享工作线程上 这似乎是一件好事 因为设置和拆除所有这些工作线程都需要工作 没有
  • 如何在 swift 3 中将毫秒转换为日期字符串[重复]

    这个问题在这里已经有答案了 我正在尝试在 swift 3 中将毫秒转换为日期字符串 我尝试设置日期格式 但我没有获取当前日期字符串 var milliseconds 1477593000000 let date NSDate timeInt
  • 如何判断当前运行的 Apple Watch 尺寸/尺寸是 38 毫米还是 42 毫米?

    我们知道Apple Watch有两种屏幕尺寸 38mm和42mm 这WKInterfaceDevice类提供了一个名为的可读属性screenBounds 我写了一个扩展WKInterfaceDevice 尝试添加一种方法来检测当前设备类型
  • ios ScheduledTimerWithTimeInterval 的时间量

    我想使用 ScheduledTimerWithTimeInterval 来执行一定时间的定期任务 比如说一小时 但我如何在我的代码上实现 这是我的代码 timer NSTimer scheduledTimerWithTimeInterval
  • 如何快速使用 CoreLocation?

    我尝试过将 CoreLocation 与我的 Swift 应用程序一起使用 但没有运气 我有以下非常简单的代码 我已经链接了 CoreLocation 库 import UIKit import CoreLocation UIApplica
  • 原生编程对于移动开发有何优势?

    我需要为一家公司在一些主要的移动操作系统上开发应用程序 特别是 iOS Android 和 WP7 我最初计划为三种不同的操作系统编写三个独立的应用程序 每个应用程序都使用本机 SDK 然而 这样做有什么好处吗 有许多可用的跨平台工具 Se
  • 来自 facebook 的高分辨率图像

    这就是我获取相册和相册中的图片的方式 let connectionPhotos FBSDKGraphRequestConnection let requestPhotos FBSDKGraphRequest graphPath String
  • 无法在 Swift 3 / iOS 10 中触发 continueUserActivity

    注意 我已经弄清楚了大部分内容 请参阅最后的更新 还是有些迷茫 我正在尝试在 Swift 3 下的 Xc8b6 中实现 NSUserActivity 处理 但处理程序协议方法的方法签名遇到问题 在当前的文档中 该方法据说是 func app
  • 无法读取未定义的属性“messageHandlers”

    我想将 JavaScript 变量传递给 Swift 我在 JavaScript 中遇到错误并进行了搜索 但没有得到任何结果 错误是 类型错误 无法读取未定义的属性 messageHandlers 任何人都可以帮忙吗 我在 Xcode 中的
  • 为什么 Swift UITableViewController 模板在 tableView cellForRowAtIndexPath 方法中使用可选参数?

    如果您创建新的 UITableViewController 类 您将看到重写的注释方法 override func tableView tableView UITableView cellForRowAtIndexPath indexPat
  • 将设备 3D 方向与太阳位置进行比较

    我正在开发一款应用程序 要求用户将 iPhone 对准太阳才能触发特殊事件 我可以基于陀螺仪和 CoreMotion 框架检索设备 3D 方向四元数 从中我可以获得偏航角 滚动角和俯仰角 我还可以根据当前日期和时间 GMT 以及纬度和经度计
  • 为什么我无法更改 AU 多通道混音器输入范围中的元件/总线数量?

    UPDATE 我正在更改我的代码以更简化的方式说明问题 我还有一个小错误 虽然没有阻止问题的发生 但确实增加了一些混乱 我正在 iOS 中实例化多通道混音器 AU kAudioUnitSubType MultiChannelMixer 并执
  • 使用 addObserverForName:usingBlock 时删除观察者

    我有以下代码 在视图加载中添加观察者 void viewDidLoad super viewDidLoad NSNotificationCenter defaultCenter addObserverForName com app live
  • 另一个 - “无法识别的选择器发送到实例”问题

    我查看了有关该主题的每个已发布问题 但没有一个给我解决方案 我的项目在很大程度上复制了开发库中的 AVPlayer 演示应用程序 减去清理功能 我有一个复制和粘贴AVPlayerDemoPlaybackView类 重命名为YOPlaybac
  • SpriteKit 中的攻击按钮

    我对 Xcode 有点陌生 一直在为我的班级制作 2d 游戏 我已经有一段时间遇到按钮问题了 我刚刚找到了为什么我的跳跃按钮不起作用的解决方案 但我还有一个攻击按钮 我设置了代码 使按钮显示在屏幕上并在按下时更改其图像 但是 我不知道要放入

随机推荐