![](/img/trans.png)
[英]IOS/Objective-C: UIActivityViewController Not Showing Twitter
[英]IOS/Objective-C: UIActivityItemSource Protocol for customizing share messages with UIActivityViewController
Apple Docs 说你可以使用UIActivityItemSource
协议来自定义与UIActivityViewController
共享的消息UIActivityViewController
代替UIActivityItemProvider
对象:
UIActivityItemSource
您可以在希望从应用程序的现有对象之一提供数据而不是创建单独的 UIActivityItemProvider 对象的情况下使用此协议。
我已经采用了这个协议,但是,像下面这样的委托方法似乎没有被触发。 任何人都可以确认这应该有效,如果可以,请指出我可能缺少的内容吗? 在此先感谢您的任何建议。
-(NSString *)activityViewController:(UIActivityViewController *)activityViewController subjectForActivityType:(UIActivityType)activityType
{
NSLog(@"DELEGATE METHOD CALLED");//Not logging to console
if (activityType == UIActivityTypeMessage) {
return @"My message";
} else if (activityType == UIActivityTypeMail) {
return @"My email text";
}
else {
return @"My default text";
}
}
是的,这个委托方法对我有用,并且调用了委托方法。 我使用以下代码创建活动项控制器:
NSArray *theItems = @[ self ];
UIActivityViewController *theController = [[UIActivityViewController alloc] initWithActivityItems:theItems applicationActivities:nil];
theController.popoverPresentationController.barButtonItem = self.shareButton;
theController.excludedActivityTypes = @[ UIActivityTypeAssignToContact,
UIActivityTypeSaveToCameraRoll, UIActivityTypePostToFlickr,
UIActivityTypePostToVimeo, UIActivityTypeAirDrop ];
[self presentViewController:theController animated:YES completion:NULL];
其中self
实现UIActivityItemSource
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.