小编Ast*_*ker的帖子

子类和UIActivityItemProvider与UIActivityViewController一起使用

我终于找到了一个比我面临同样问题的人.

UIActivityViewController根据所选活动自定义文本

我想使用UIActivityViewController的活动自定义内容共享.好的答案如下:

"不是将文本字符串传递给initWithActivityItems调用,而是传入您自己的UIActivityItemProvider类子类,当您实现itemForActivityType方法时,它将提供共享服务作为'activityType'参数.

然后,您可以从此方法返回自定义内容."

我理解技巧,但我没有办法做到这一点......

我这样做是一个子类:

@interface SharingItems : UIActivityItemProvider

@implementation SharingItems

-(id)activityViewController:(UIActivityViewController *)activityViewController itemForActivityType:(NSString *)activityType
{
    // Here depending on the activityType i want to share NSString or UIImage
}

@end
Run Code Online (Sandbox Code Playgroud)

但我不知道在我原来的viewController中现在要做什么:

-(void)actionSheet
{    
    if ([[UIActivityViewController class] respondsToSelector:@selector(alloc)])
    {
        __block NSString *imgName = [[NSString alloc] initWithFormat:@"%@", _sharingUrl];
        NSArray *activityItems = [NSArray arrayWithObjects:imgName, nil];

        UIActivityViewController *activityController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
        [self presentViewController:activityController animated:YES completion:nil];

        __block NSString *chan      = [[NSString alloc] initWithFormat:@"%@", _channel];
        [activityController setCompletionHandler:^(NSString* activityType, BOOL completed)
        { …
Run Code Online (Sandbox Code Playgroud)

xcode objective-c sharing ios

7
推荐指数
1
解决办法
9236
查看次数

标签 统计

ios ×1

objective-c ×1

sharing ×1

xcode ×1