首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何以编程方式使用PHPicker中的新iOS从照片中加载图像?

如何以编程方式使用PHPicker中的新iOS从照片中加载图像?
EN

Stack Overflow用户
提问于 2022-04-21 12:42:07
回答 1查看 2K关注 0票数 -2

我想使用新的PHPickerViewController从照片中选择一个图像,当我的控制器加载时,我想直接打开PHPicker

像这样

代码语言:javascript
复制
import UIKit
class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
         // Do any additional setup after loading the view.
         // TODO: - Here I want PhotoPicker
       }
    }
EN

回答 1

Stack Overflow用户

发布于 2022-04-21 12:44:31

当您想要放置您的openPHPicker()时,可以调用此方法PHPicker。

  1. 您也可以使用此代码。来打开新的PHPicker
  2. 有关PHPicker在WWDC21 PHPicker WWDC20视频PHPicker WWDC21视频中的更多知识
  3. PHPicker Notes PHPicker备注
代码语言:javascript
复制
import Photos
import PhotosUI


// MARK: - PHPicker Configurations (PHPickerViewControllerDelegate)
extension ViewController: PHPickerViewControllerDelegate {
    func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) {
         picker.dismiss(animated: true, completion: .none)
         results.forEach { result in
               result.itemProvider.loadObject(ofClass: UIImage.self) { reading, error in
               guard let image = reading as? UIImage, error == nil else { return }
               DispatchQueue.main.async {
                   self.profilePictureOutlet.image = image
                   // TODO: - Here you get UIImage
               }
               result.itemProvider.loadFileRepresentation(forTypeIdentifier: "public.image") { [weak self] url, _ in
                // TODO: - Here You Get The URL
               }
          }
       }
  }

   /// call this method for `PHPicker`
   func openPHPicker() {
       var phPickerConfig = PHPickerConfiguration(photoLibrary: .shared())
       phPickerConfig.selectionLimit = 1
       phPickerConfig.filter = PHPickerFilter.any(of: [.images, .livePhotos])
       let phPickerVC = PHPickerViewController(configuration: phPickerConfig)
       phPickerVC.delegate = self
       present(phPickerVC, animated: true)
   }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71954672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档