iOS实现向多个社交网站(facebook,微信,微博,twitter等)分享的代码,支持iPhone和iPAD(分享链接编码)

本文介绍了一种在iOS应用中实现分享功能的方法,包括构造分享文本、处理URL链接及使用UIActivityViewController展示分享选项等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

-(void)shareInfor{

    NSString *textToShare = @"IELTS Vocabularies, Sentences and Tests Application, Support 4 English voice. Easy to operate:";

    NSString * strUrl=@"https://itunes.apple.com/ca/app/雅思单词宝/id1209567759?mt=8";

    strUrl = [strUrl stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; //对字符串进行编码,保证链接中的汉字能够正确识别

    NSURL *url = [NSURL URLWithString:strUrl];

    //https://itunes.apple.com/ca/app/雅思单词宝/id1209567759?mt=8

    NSArray *objectsToShare = @[textToShare, url];

    UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:nil];

    

//不需要的功能可以写在如下数组屏蔽

    NSArray *excludeActivities = @[UIActivityTypeAirDrop,

                                   UIActivityTypePrint,

                                   UIActivityTypeCopyToPasteboard,

                                   UIActivityTypeAssignToContact,

                                   UIActivityTypeSaveToCameraRoll,

                                   UIActivityTypeAddToReadingList,

                                   UIActivityTypePostToFlickr,

                                   UIActivityTypePostToVimeo

                                   ];

    

    activityVC.excludedActivityTypes = excludeActivities;

    

    ////////////

    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)

    {    //if iPhone

        [self presentViewController:activityVC animated:YES completion:nil];

    }

    

    else  //if iPad

    {

        // Change Rect to position Popover

        UIPopoverController *popup = [[UIPopoverController alloc] initWithContentViewController:activityVC];

        NSLog(@"%f",self.view.frame.size.width/2);

        [popup presentPopoverFromRect:CGRectMake(self.view.frame.size.width/2, self.view.frame.size.height/4, 0, 0)inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

    }

    ////////////

    

    //stateData.score=stateData.score+1;//分享后积分,该部分代码使用者根据自身添加

    //[self writeStateFile];//积分写入文件

}


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值