Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 有没有什么方法可以让我选择“只”;JPG",&引用;巴布亚新几内亚“;及;JPEG";通过UIImagePIcker获取图像_Ios_Objective C_Swift_Xcode_Uiimagepickercontroller - Fatal编程技术网

Ios 有没有什么方法可以让我选择“只”;JPG",&引用;巴布亚新几内亚“;及;JPEG";通过UIImagePIcker获取图像

Ios 有没有什么方法可以让我选择“只”;JPG",&引用;巴布亚新几内亚“;及;JPEG";通过UIImagePIcker获取图像,ios,objective-c,swift,xcode,uiimagepickercontroller,Ios,Objective C,Swift,Xcode,Uiimagepickercontroller,使用self.imagePicker.mediaTypes=[(kUTTypeImage作为字符串)]通过UIImagePicker我可以选择所有类型的图像,但我的要求是通过照片库只选择JPG、JPEG和PNG类型图像,并且不允许使用GIF和HEIC(实时照片) 那么,在imagePicker.sourceType=.photoLibrary 代码: 你试过这样吗 self.imagePicker.mediaTypes = [(kUTTypeGIF as String),

使用
self.imagePicker.mediaTypes=[(kUTTypeImage作为字符串)]
通过
UIImagePicker
我可以选择所有类型的图像,但我的要求是通过照片库只选择
JPG、JPEG和PNG
类型图像,并且不允许使用
GIF
HEIC
(实时照片)

那么,在
imagePicker.sourceType=.photoLibrary

代码:

你试过这样吗

self.imagePicker.mediaTypes = [(kUTTypeGIF as String), 
                               (kUTTypeJPEG as String), 
                               (kUTTypePNG as String)]

请记住导入MobileCoreServices框架。

您必须提及所需格式的标识符

解决此问题的步骤

  • 进口流动储备

  • 假设ImagePickerController的一个变量

    let picker = UIImagePickerController()
    
  • 指定媒体类型如下

    picker.mediaTypes = [(kUTTypePNG as String), (kUTTypeJPEG as String), (kUTTypeImage as String)] // This is an array - you can add other format Strings as well
    

  • 若要交叉验证,您将看到,如果未提及媒体类型,视频/GIF将不会显示给应用程序用户。

    您可以在选择器视图中指定选定的媒体类型,如下所示:

    picker.mediaTypes = [(kUTTypePNG as String)]
    

    根本没有。没有办法将特定格式的输入提供给
    UIImagePicker
    ,而只获得该格式的结果


    UIImagePicker
    仅接受
    kUTTypeMovie
    kUTTypeImage
    作为
    mediaType
    。在
    didfishpickingMediaWithInfo

    中选择任何图像后,您可以检查图像/文件扩展名。通过
    mediaTypes
    属性指定所需的图像扩展名。用户选择后,您可以检查图像扩展名。如果不是所需的图像,则可以向用户显示警报。@Mahendra在选择后检查图像扩展名类似于一种解决方法。通过将mediatypes设置为kUTTypeJPEG获得以下错误:
    由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“源0没有可用的类型”***第一次抛出调用堆栈:
    您可以使用
    让assetPath=info[.imageURL]进行检查!NSURL
    如果assetPath.absoluteString?.hasSuffix(“JPG”){//your code}
    @KishanBhatiya您是对的,但使用这种方式,用户会感到困惑,他/她可以选择GIF和HEIC图像,但无法提交。因此,我真正想要的是一个
    imagepicker.photolibrary
    ,它只包含JPG、JPEG和PNG类型的图像选择。使用以下错误:
    ***由于未捕获的异常“NSInvalidArgumentException”终止应用程序,原因是:“源0没有可用的类型”***
    Hi@Miki,(kUTTypeImage作为字符串)显示还包括.gif文件的图像。如果我从过滤器中删除kUTTypeImage,应用程序将崩溃,并出现错误“'No available types for source 0'”。是否有其他方法可以过滤gif和其他动画文件?不起作用-错误是:
    ***由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因是:“源0没有可用的类型”***
    Hi@Haya,(kUTTypeImage作为字符串)显示也包括.gif文件的图像。如果我从过滤器中删除kUTTypeImage,应用程序将崩溃,并出现错误“'No available types for source 0'”。有没有其他方法可以过滤gif和其他动画文件?Hi@Komal(kUTTypeImage为字符串)显示的图像也包括.gif文件。如果我从过滤器中删除kUTTypeImage,应用程序将崩溃,并出现错误“'No available types for source 0'”。有没有其他方法可以过滤gif和其他动画文件?
    picker.mediaTypes = [(kUTTypePNG as String)]