使用UIImagePickerController时,我无法显示相机控件。具体来说,我需要能够在慢动作,视频,照片,广场和全景之间进行选择。
我使用的代码的基本部分是:
UIImagePickerController *pc = [[UIImagePickerController alloc] init];
[pc setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
pc.mediaTypes = [[NSArray alloc] initWithObjects:(NSString *)kUTTypeImage, nil];
但是这显示了一个能够仅拍摄照片的拾取器控制器,即没有方形或全景模式。
将pc.mediaTypes设置为:
pc.mediaTypes = [[NSArray alloc] initWithObjects:(NSString *)kUTTypeImage, (NSString *)kUTTypeMovie, nil];
..显示带有视频和照片的选择器控制器。但是如何显示其他相机模式/类型呢?例如。什么是全景的UTType?
答案 0 :(得分:4)
UIImagePickerController不会为您提供Apple的整个相机应用程序,以便在您自己的应用程序中使用。并非Camera应用程序的所有功能都可用。您可以通过调用 - [UIImagePicker availableMediaTypesForSourceType:]来打印可用的媒体类型,您将发现您获得了kUTTypeImage和kUTTypeMovie。
UIImagePickerController不提供Square,slo-mo,time-lapse和全景功能。
答案 1 :(得分:0)
UIImagePickerController
在iOS 2.0中问世,可能当时很现代:
https://developer.apple.com/documentation/uikit/uiimagepickercontroller?language=objc
您看到的是“标准控件”。
即使在今天,现代文档也指向了旧版(Objective-C时代的文档)
Chrome的样式已更改,但正如他们所说:“歌曲保持不变。”
有一些钩子可以隐藏标准控件,然后您可以添加自己的客户控件来以编程方式操作相机。我有一个宠物项目可以制作延时摄影等版本。
但是对于严肃的项目,苹果建议使用AV框架,尽管我还没有开始使用它们,但我当然同意。