问题标签 [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 投票
1 回答
1107 浏览

ios - 如何使用 PHPickerViewController 仅显示有限的照片?

我使用有限的照片库功能并选择了一些照片,但是当使用PHPickerViewController在应用程序中选择图像时,PHPickerViewController 会显示画廊中的所有图像,而不是之前只选择几个图像。

是否可以在 PHPickerViewController 中仅显示预先选择的图像?如果没有,如何显示预先选择的图像列表,以便用户可以选择之前的 UIImagePickerController。

感谢大家的分享和评论

0 投票
1 回答
396 浏览

uikit - 如何修改PHPicker的外观

我在 iOS 14 上新的 PHPicker 有问题。当我的应用请求照片库授权时,系统会提示用户三个选项,如果用户选择“选择照片”,系统会显示一个 PHPicker,其中用户可以选择我的应用可以访问的照片和视频。

但是现在 PHPicker 系统的导航栏看起来很糟糕,它有黑色的背景和黑色的文本颜色(见下面的链接)。我想知道如何自定义它的外观。

任何回复都非常感谢!

PHPicker

0 投票
0 回答
87 浏览

swift - 从 PHPickerViewController 查看内存泄漏

我最近根据 Apple 的建议集成了 PHPickerViewController 以在您的应用程序中访问照片。但是,在测试内存泄漏时,我注意到选择器产生了许多内存泄漏。我正在运行 PHPickerDemo 并在分析时看到以下泄漏:

来自 Instruments 内存泄漏的图像

关于如何解决这个问题的任何想法,或者这是我们必须等待 Apple 解决的问题?

0 投票
0 回答
98 浏览

ios - 向 PHPickerViewController 添加选择确认

我正在执行新PHPickerViewController的如下:

和:

当用户选择照片/视频时,有什么方法可以向用户提供某种形式的确认对话框?就目前而言,点击媒体会立即关闭PHPickerViewController并相应地处理选定的媒体,而在我之前UIImagePickerController的实现中,点击照片/视频后,它会在底部显示一个带有“取消”和“选择”按钮的预览对话框。我认为这可能与使用picker.allowsEditing = true该实现有关 - 是否存在类似的东西PHPickerViewController

我想我可以UIAlertController在提交选定的媒体之前在委托方法中添加一个,但它可能会很笨重......

0 投票
1 回答
817 浏览

ios - PHPickerViewController 添加视频编辑屏幕 aka (UIImagePickerController.allowsEditing = true)

我想在选择后编辑/压缩视频,就像UIImagePickerControllerallowsEditing = true.

新的仍然PHPickerViewController没有这个属性,并Apple说这里不再有这个属性。但是 App Store 中有应用程序在选择资产后推送“allowsEditing 控制器”PHPickerViewController

这是我的 PHPickerViewController 实现:

0 投票
1 回答
313 浏览

ios - 通过 PHPickerViewController 推送视图控制器

是否可以将 vc 推送到 PHPickerViewController 上?

我正在尝试这样做,但没有运气:

0 投票
0 回答
57 浏览

ios - 为什么每次我选择图像时 UIImagePickerViewController 都会增加“文档和数据”的使用?

我使用 UIImagePickerViewController 在我的照片编辑应用程序中挑选照片。我的用户抱怨说,每次他使用该应用程序时,我的应用程序的“文档和数据”的使用量都在增加,现在它消耗了近 1GByte。

经过一番调查,我发现每次使用 UIImagePickerViewController 挑选照片时,应用程序的“文档和数据”的使用量都会增加。这在苹果提供的 UIImagePickerViewController 示例程序中也可以看到。

https://developer.apple.com/documentation/uikit/uiimagepickercontroller/customizing_an_image_picker_controller

启动示例应用程序并从 PhotoLibrary 中选择一张照片后,您会看到设置应用程序中“文档和数据”的使用率高于选择照片之前。在大多数情况下,每次选择照片时它都会增加。

在此处输入图像描述

如果它作为缓存保持在某个有限的值是可以的,但似乎每次我选择照片时它都会不断增加。

有没有办法清除 UIImagePickerViewController 使用的数据?或者有没有办法阻止它消耗存储空间?

我也使用下面的示例项目尝试了 PHPickerViewController(官方图像选择器的较新版本),但出现了同样的问题。

https://developer.apple.com/documentation/photokit/selecting_photos_and_videos_in_ios

我已经使用 iOS SDK 14.4 在我的 iPhone12 pro(iOS14.4) 上进行了尝试

0 投票
0 回答
165 浏览

ios - 如何使用 loadItemForTypeIdentifier 加载图像

我有以下函数,它使用 new 加载图像PHPickerViewController

我想避免使用loadObjectOfClass,因为我不希望图像异步加载。所以我选择loadItemForTypeIdentifier改用并做了以下事情:

但是,当我运行此代码时,我得到:

ncaught 异常“NSInvalidArgumentException”,原因:“-[NSURL imageOrientation]:无法识别的选择器发送到实例 0x600001ce5920”以 NSException 类型的未捕获异常终止

我对积木不是很好,这是我第一次使用 aUTI所以我想知道,我在这里做错了什么?甚至有可能完成我想要完成的事情,即UIImage使用拉出loadItemForTypeIdentifier吗?我的语法错了吗?

0 投票
1 回答
173 浏览

swiftui - UIImage 必须符合 PHPickerViewControllerDelegate 回调中的 _ObjectiveCBridgeable

我已经查看了WWDC2020 视频,该视频解释了如何采用新的 PHPickerViewController API。我还看到几个博客完全显示了以下代码。

但是,这对我来说失败了,而且错误非常奇怪。

UIImage 必须确认到 _ObjectiveCBridgable

我将包括一个屏幕截图,因为它非常令人难以置信

在此处输入图像描述

硬件:M1芯片组

IDE:Xcode 12.4

0 投票
0 回答
307 浏览

swift - PHPickerViewController 隐藏搜索栏和导航栏

我一直在尝试在新应用中实现照片选择功能。我目前的方法是使用嵌入在 UIViewControllerRepresentable 中的 PHPickerViewController 在 swiftUI 视图中显示。

这是我的 makeUIViewController 函数。

它在一个名为 的结构中PhotoPicker

我想隐藏的是这部分: 在此处输入图像描述

是的,所有这些。让我解释一下,PickerView始终呈现,它不是弹出窗口,因此不需要取消按钮。如您所见,也没有完成按钮。那是因为只需要选择一个图像,所以当用户点击图像时,会立即调用选择新图像的事件。无需用户确认。然后关于搜索栏,我真的不想要它,我只是想让用户选择一张照片,最后在我的情况下也不需要在照片和相册之间进行小切换。

我尝试了很多不同的方法,包括在创建控制器时尝试为控制器设置选项makeUIViewController。这些选项例如:

我还尝试在我的 SwiftUI 正文中调用视图修饰符:

但同样,它们似乎都不起作用。所以这就是我在这里问的原因,因为似乎我尝试了一切,但没有任何效果......