iOS 6 ActivityViewController定制微博等

Fry*_*Fry 4 objective-c ios6 weibo uiactivityviewcontroller sinaweibo

我想实现iOS6的新ActivityViewController,但我想摆脱未使用的活动,如消息,复制,在微博上分享等.

是否可以自定义或子类化以删除这些图标?

谢谢你的帮助!

Fry*_*Fry 10

好的,我自己找到了一个解决方案来自定义UIActivityViewController:

如果你想摆脱像微博,脸书等共享选项...它完全简单,只需设置ExcludedActivityTypes属性:

UIActivityViewController *actionCtrl = [[UIActivityViewController alloc]initWithActivityItems:act applicationActivities:nil];

[actionCtrl setExcludedActivityTypes:@[UIActivityTypeAssignToContact, UIActivityTypeCopyToPasteboard, UIActivityTypeMail, UIActivityTypePostToWeibo]];
[self presentViewController:actionCtrl animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

如果要添加另一个Activity(按钮或图像等),则需要对UIActivity进行子类化,并覆盖一些方法,如activityType和activityImage.

- (UIImage *)activityImage {
    return [UIImage imageNamed:@"icon"];
}
Run Code Online (Sandbox Code Playgroud)

你这也帮助了你们!