介绍
今天就跟大家聊聊有关怎么在iOS中实现微信分享多张图片功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
OC代码
UIImage * imageToShare =, (UIImage imageNamed: @" 99687078. jpg"]; ,UIImage * imageToShare1 =, (UIImage imageNamed: @" 2222. jpg"]; ,NSArray * activityItems =, @ [imageToShare imageToShare1]; ,UIActivityViewController * activityVC =, [[UIActivityViewController alloc] initWithActivityItems: activityItems applicationActivities: nil); ,[self presentViewController: activityVC 动画:TRUE 完成:nil);
迅速代码
let imageToShare1 =, UIImage.init(命名为:“99687078. jpg") ,let imageToShare2 =, UIImage.init(命名为:“2222. jpg") ,let activityItems =, [imageToShare1 imageToShare2] ,let activityVC =, UIActivityViewController.init (activityItems: activityItems,, applicationActivities:, nil) ,self.present (activityVC,动画,,真的,,完成:,nil)
运行截图
<强>注意强>
我们在分享多张图片到朋友圈的时候会发现,我们在不做任何处理的时候,直接从手机相册调取多张图片分享的时候,分享失败。具体什么原因我研究了一下,发现分享的数据总共大小有限制;在这里举个例子,比如电梯,电梯限定的重量是固定的,所以不管你乘坐多少人,乘坐的人比较胖,那就乘坐的人比较少,如果乘坐的人比较瘦,那就可以多坐几个,所以UIActivityViewController分享多张图片到朋友圈的时候,我根据图片数量的多少,然后把图片压缩到指定宽高,比如一张图片,我就压缩成和微信压缩图片一样的大1280年小,如果9张我就压缩成500;
<强>代码强>
压缩图片的方法在下面粘出,其中compressibilityFactor为图片宽高的最大值;
# import “WeChatJPEGImager.h" , # define KCompressibilityFactor 1280.00 , @implementation WeChatJPEGImager , # pragma mark 安康;压缩一张图片,最大宽高1280,类似于微信算法 安康;(UIImage *) getJPEGImagerImg:(UIImage *){形象 ,CGFloat oldImg_WID =, image.size.width; ,CGFloat oldImg_HEI =, image.size.height; ,//CGFloat aspectRatio =, oldImg_WID/oldImg_HEI;//宽高比 ,如果(oldImg_WID 祝辞,KCompressibilityFactor | |, oldImg_HEI 祝辞,KCompressibilityFactor) { ,//超过设置的最大宽度,先判断那个边最长 ,如果(oldImg_WID 祝辞,oldImg_HEI) {//宽才能度大于高度 oldImg_HEI 才能=,(KCompressibilityFactor *, oldImg_HEI)/oldImg_WID; 时间=oldImg_WID 才能;KCompressibilityFactor; ,其他}{ oldImg_WID 才能=,(KCompressibilityFactor *, oldImg_WID)/oldImg_HEI; 时间=oldImg_HEI 才能;KCompressibilityFactor; ,} ,} ,UIImage * newImg =, (self imageWithImage: image scaledToSize: CGSizeMake (oldImg_WID, oldImg_HEI)]; ,NSData * dJpeg =,零; ,if (UIImagePNGRepresentation (newImg)==nil), {=,,dJpeg  UIImageJPEGRepresentation (newImg, 0.5); ,其他}{=,,dJpeg  UIImagePNGRepresentation (newImg); ,} ,return [UIImage imageWithData dJpeg):; } # pragma mark 安康;压缩多张图片,最大宽高1280,类似于微信算法 安康;(NSArray *) getJPEGImagerImgArr:(NSArray *) imageArr { ,NSMutableArray * newImgArr =, (NSMutableArray 新); ,for (int 小姐:=,0;,i怎么在iOS中实现微信分享多张图片功能