问题标签 [phpickerviewcontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
347 浏览

ios - 如何使用 PHPicker 从图库中获取 WebP 图像

我有一个 PHPIckerViewController,它从 iOS 14 开始可用。我想从画廊获取图像,它是 WEBP 格式。但是 PHPicker 中的项目提供者无法加载这种格式的图像。请告诉我如何使用新的选择器在 UIButton 上选择和设置图像。

代码:

}

谢谢

0 投票
1 回答
50 浏览

ios - PHPickerViewController 和隐私

我想将 PHPickerViewController 返回的大量对照片库图像的引用保存到磁盘。(我不想自己保存图像,它们太大了。)

我想使用这些引用来稍后加载图像,而不是受限于有限的照片库。有没有办法做到这一点?PHPickerViewController 返回 itemProviders,它可以用来加载任何图像,但这些只是暂时存在的。

0 投票
1 回答
213 浏览

swift - SwiftUI:是否可以让用户缩放使用 PHpicker 选择的图像?

我有一个用 PHPicker 创建的图像选择器,我想知道是否可以让用户缩放选择的图像?

这不是整个代码,而只是我认为解决此问题所需的 makeUIViewController 的代码。如果需要,我当然可以提供其余的代码。

这就是我要找的在此处输入图像描述

0 投票
1 回答
613 浏览

ios - iOS 14:PHPickerViewController 有没有办法同时加载所有资产 PHPickerResult

目前,我正在尝试深入 PHPickerViewController 以从照片中同时选择多个图像。所以我想要用户选择的图像数组,我尝试了太多方法但没有运气。这是我的代码,请告诉我有最佳实践吗?

0 投票
0 回答
43 浏览

ios - PHPicker 加载一些视频,但不是全部

PHPicker 适用于大多数视频,但有些视频不返回 typeIdentifier。有谁知道为什么?

这是设置代码

然后,在 Coordinator:PHPickerViewControllerDelegate 类中......

在这一行:

对于某些视频,它返回正确的视频标识符(例如,com.apple.quicktime-movie),但对于其他视频,例如一小时长的视频,视频标识符为空。

有什么理由吗?视频是本地的,而不是在 iCloud 中。

0 投票
1 回答
284 浏览

ios - 用 PHPickerViewController 替换 UIImagePickerController

我正在将 UIImagePickerController 替换为 iOS 14 的 PHPickerViewController,但我在使用 PHPickerViewController 在 UI 中显示所选照片时遇到问题。当我从照片库中选择一张照片时,PHPickerViewController 会自行关闭而不更新 UI 中的照片。我一直在尝试各种教程中的不同解决方案,但每次都得到相同的结果。

以下是我目前拥有的代码。DispatchQueue.main.async 括号内的代码是我一直用于 UIImagePickerController 在 UI 中显示照片的代码。

0 投票
0 回答
106 浏览

swift - “文件“...”无法打开,因为没有这样的文件”将视频从 phpickerviewcontroller 上传到 FirebaseStorageq

我正在尝试使用 phpickerviewcontroller 上传视频文件,但在将 URL 上传到 FirebaseStorage 时遇到问题。这是一些代码:

我试过使用.putFile,但它一直在说

确保文件 URL 不是目录、符号链接或无效 url。

当我使用.putData它说

文件“...”无法打开,因为没有这样的文件

编辑:

0 投票
4 回答
686 浏览

ios - PHPickerViewController 点击搜索会出错...“无法加载照片”

我正在尝试PHPickerViewController使用 SwiftUI 和可组合架构来实现。(并不是说我认为这特别相关,但它可以解释为什么我的某些代码是这样的)。

示例项目

我一直在玩这个来尝试解决它。我在 GitHub 上创建了一个小示例项目,它删除了可组合架构并保持 UI 超级简单。

https://github.com/oliverfoggin/BrokenImagePickers/tree/main

看起来 iOS 15 在 UIImagePickerViewController 和 PHPickerViewController 上都出现了问题。(这是有道理的,因为它们都在引擎盖下使用相同的 UI)。

我猜嵌套步骤是确定在 UIKit 应用程序中使用它们时是否发生相同的错误。

我的代码

我的代码相当简单。它几乎只是对使用的相同功能的重新实现,UIImagePickerViewController但我想尝试使用更新的 API。

我的代码看起来像这样......

所有这些都适用于简单的情况

我可以展示ImagePicker视图并选择一张照片,一切都很好。我可以取消它。我什至可以向下滚动我拥有的巨大图像集合视图。我什至可以看到新图像出现在我的状态对象中并将其显示在我的应用程序中。(注意......这仍然是 WIP,所以代码有点笨拙,但这只是为了让它最初工作)。

问题案例

问题是当我点击搜索栏时PHPickerView(这是Apple在控件中提供的搜索栏,我没有创建它或编码它)。它似乎开始向上滑动键盘,然后视图变为空白,中间有一条消息......

无法加载照片

[再试一次]

我还收到了一个看起来很奇怪的错误日志。(我删除了时间戳以缩短行)。

点击“再试一次”按钮重新加载初始滚动屏幕,我可以继续使用它。但是再次点击搜索栏只会显示相同的错误。

我通常是第一个指出错误几乎肯定与 Apple API 无关的人,但我被这个问题难住了。我不确定我在做什么导致这种情况发生?

是它在 SwiftUI 视图中的事实吗?

在 UIKit 中重新创建项目

我使用 UIKit 重新制作了同一个项目... https://github.com/oliverfoggin/UIKit-Image-Pickers

而且我根本无法复制崩溃。

另外...如果您对设备进行任何类型的屏幕录制,则不会发生崩溃。我尝试在设备本身上录制,但无法复制。我还尝试使用 iPhone 屏幕从我的 Mac 录制电影,但无法复制崩溃。但是……当我在 QuickTime 上停止录制时,崩溃又可以复制了。

0 投票
1 回答
94 浏览

swift - PHPickerViewController:重新打开图像选择器时如何取消选择先前选择的图像

我创建了一个PHImagePicker支持的应用程序。它可以工作,我可以从照片库中选择多张照片并将它们导入这个应用程序。但是当我重新打开这个时pickerController,之前选择的图像带有蓝色标记。我必须先取消选择它们才能选择一些新图像。

我的问题是如何在每次打开 imagePickerController 时清除之前选择的图像状态?

PHImagePicker

视图控制器

0 投票
1 回答
245 浏览

ios - “无法加载 public.video 类型的表示”使用 PHPickerViewController

试图允许用户使用 PHPickerViewController(最终到 firebase 存储)从相机胶卷上传视频,这就是我试图获取 url 的原因,但我收到了这个烦人的错误:

错误域=NSItemProviderErrorDomain 代码=-1000 “无法加载 public.video 类型的表示” UserInfo={NSLocalizedDescription=无法加载 public.video 类型的表示}

这是一些代码:

我看到其他一些帖子说这可能是一个错误,所以如果是,那我该怎么办?