-base64Encoding返回类型默认为id

时间:2013-04-24 09:36:54

标签: iphone ipad ios6 uiimagejpegrepresentation

在我的应用程序中,当我尝试使用以下编码时,我会收到警告

代码

[UIImageJPEGRepresentation(petAvadar.image, 1.0)base64Encoding]

警告

Instance method '-base64Encoding' not found (return type defaults to 'id')

如何删除此警告,请帮我解决。

3 个答案:

答案 0 :(得分:2)

然后通过以下方式将UIImage对象转换为NSData:

NSData *imageData = UIImageJPEGRepresentation(image, 1.0);

然后应用Base64编码将其转换为base64编码的字符串:

NSString *encodedString = [imageData base64Encoding];

once check this one

答案 1 :(得分:1)

您需要在头文件中声明您的函数。

你应该添加这样的一行:

-(returnType)base64Encoding;

returnType是您的方法返回的类型,例如NSString*NSIntegervoid或您的方法返回的任何内容。

答案 2 :(得分:0)

确保您已经从here

中填写了Base64 lib类

然后导入 Base64.h 使用下面的代码片段

用于将图像编码为Base64

NSData* data = UIImageJPEGRepresentation(yourImage, 1.0f);
 [Base64 initialize];
 NSString *strEncoded = [Base64 encode:data];

并将Base64解码为图像:

[Base64 initialize]; 
 NSData* data = [Base64 decode:strEncoded ];;
 image.image = [UIImage imageWithData:data];

您也可以查看thisthis链接