我刚刚为共享助手制作了一个包装类,我的代码如下。
let activityVC = UIActivityViewController(activityItems: [message], applicationActivities: nil)
activityVC.setValue(subject, forKey: "subject")
activityVC.completionWithItemsHandler = {(activityType: String!, completed:Bool, objects:[AnyObject]!, error:NSError!) in
}
fromVC.presentViewController(activityVC, animated: true, completion: nil)
问题从这里开始,UIActivityItemSource 方法没有被调用
override func activityViewController(activityViewController: UIActivityViewController, itemForActivityType activityType: String) -> AnyObject? {
switch activityType
{
case UIActivityTypeMail:
return msg
case UIActivityTypeMessage:
return msg
case UIActivityTypePostToFacebook:
return msg
case UIActivityTypePostToTwitter:
return strTwitterShare
default:
return msg
}
}
感谢帮助
最佳答案
如果你使用 let activityVC = UIActivityViewController(activityItems: [self], applicationActivities: nil) 它应该可以工作
...然后您的消息将在您的 itemForActivityType 方法中提供。
关于xcode - 未调用 itemForActivityType,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32347638/