IOS开发之分享
在我們IOS軟件開發當中我們有事需要分享一些圖片視屏和文檔之類的東西。但是有可能用的是別的軟件,這時候我們就需要學習分享。
我們舉個分享微信的例子好了:
看代碼
先看AppDelegate.m文件內容
在AppDelegate.m里面我們需要
[WXApi registerApp:@"wx252e7c172102f9cb" withDescription:@"微信分享 1.0"];才能夠分享微信 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {// Override point for customization after application launch./*只有寫了這一句話才能夠在具體的地方實現分享功能wx252e7c172102f9cb 這個項目向微信注冊的開發者賬號微信分享 1.0*/[WXApi registerApp:@"wx252e7c172102f9cb" withDescription:@"微信分享 1.0"];self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];ViewController * tempVC = [[ViewController alloc] init];self.window.rootViewController = tempVC;[self.window makeKeyAndVisible];return YES; }
再看控制器
.h文件
#import <UIKit/UIKit.h>@interface ViewController : UIViewController@property(nonatomic, strong) UIButton *wechatFriendBtn; @property(nonatomic, strong) UIButton *wechatFriendsBtn;@end.m文件
#import "ViewController.h" #import "WXApi.h"@interface ViewController ()@end#define kLoadImage(name, type) [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:name ofType:type]] #define ScreenWidth self.view.frame.size.width #define ScreenHeight self.view.frame.size.height@implementation ViewController- (void)viewDidLoad {[super viewDidLoad];_wechatFriendBtn = [UIButton buttonWithType:UIButtonTypeCustom];_wechatFriendBtn.frame = CGRectMake(ScreenWidth / 2 - 120, ScreenHeight / 2 - 120, 80, 80);[_wechatFriendBtn setShowsTouchWhenHighlighted:YES];[_wechatFriendBtn setBackgroundImage:kLoadImage(@"btn_微信好友", @"png") forState:UIControlStateNormal];_wechatFriendBtn.enabled = YES;_wechatFriendBtn.tag = 1;[_wechatFriendBtn addTarget:self action:@selector(btnClicked:) forControlEvents:UIControlEventTouchUpInside];[self.view addSubview:_wechatFriendBtn];_wechatFriendsBtn = [UIButton buttonWithType:UIButtonTypeCustom];_wechatFriendsBtn.frame = CGRectMake(ScreenWidth / 2 + 40, ScreenHeight / 2 - 120, 80, 80);[_wechatFriendsBtn setShowsTouchWhenHighlighted:YES];[_wechatFriendsBtn setBackgroundImage:kLoadImage(@"btn_朋友圈", @"png") forState:UIControlStateNormal];_wechatFriendsBtn.tag = 2;[_wechatFriendsBtn addTarget:self action:@selector(btnClicked:) forControlEvents:UIControlEventTouchUpInside];[self.view addSubview:_wechatFriendsBtn];}-(void)btnClicked:(UIButton *)btn {switch (btn.tag){case 1:{//這種分享是帶文字和圖片的分享,屬于網頁分享,注意分享的圖片大小不能超過32k。WXMediaMessage *message = [WXMediaMessage message];//分享內容的標題message.title = @"分享的標題";//分享內容的描述message.description = @"分享的介紹";//分享的圖片[message setThumbImage:kLoadImage(@"share", @"png")];//分享鏈接WXWebpageObject *ext = [WXWebpageObject object];ext.webpageUrl = @"www.sougou.com";message.mediaObject = ext;SendMessageToWXReq* req = [[SendMessageToWXReq alloc] init];/*發送消息的類型,包括文本消息和多媒體消息兩種,兩者只能選擇其一,不能同時發送文本和多媒體消息*/req.bText = NO;req.message = message;//這個屬性表示分享到好友req.scene = WXSceneSession;[WXApi sendReq:req];//這種分享的是純文字的信息。// SendMessageToWXReq* req = [[SendMessageToWXReq alloc] init];// req.text = _linkStr;// req.bText = YES;// req.scene = WXSceneSession;// [WXApi sendReq:req]; }break;case 2:{WXMediaMessage *message = [WXMediaMessage message];message.title = @"分享的標題";message.description = @"分享的介紹";[message setThumbImage:kLoadImage(@"share", @"png")];WXWebpageObject *ext = [WXWebpageObject object];ext.webpageUrl = @"www.baidu.com";message.mediaObject = ext;SendMessageToWXReq* req = [[SendMessageToWXReq alloc] init];req.bText = NO;req.message = message;//這個屬性表示分享到朋友圈req.scene = WXSceneTimeline;[WXApi sendReq:req];// SendMessageToWXReq* req = [[SendMessageToWXReq alloc] init];// req.text = _linkStr;// req.bText = YES;// req.scene = WXSceneTimeline;// [WXApi sendReq:req]; }break;} }- (void)didReceiveMemoryWarning {[super didReceiveMemoryWarning];// Dispose of any resources that can be recreated. }@end?
轉載于:https://www.cnblogs.com/YU411524/p/4955427.html
總結
- 上一篇: Windows 7 硬盘安装方法
- 下一篇: 《C#3.0 in a Nutshell