我正在试图找出如何创建一个用户互动的帖子或鸣叫,如SoundCloud的如下所示:
以黄色突出显示的部分是感兴趣的部分,因为据我所知,UIActivityViewController(这是Sound Cloud为此使用的是什么),唯一可以共享的对象是图像和字符串.
此外,如果您要点击黄色突出显示的部分,该屏幕将在Twitter上弹出:
他们怎么办?他们有一个暂停的按钮和一切!
这是我试图这样做的
func displayShareSheet(shareContent:String) { let someView:CustomView = CustomView() // CustomView is a subclass of UIView let activityViewController = UIActivityViewController(activityItems: [someView],applicationActivities: nil) presentViewController(activityViewController,animated: true,completion: {}) }
…不行UIActivityViewController表弹出,没有指示任何共享选项.
我知道有些人可能认为这是一个广泛的问题,但如果你至少能指出我正确的方向,我将非常感激.谢谢.
这个工作.共享目的地的完整列表在您的设备上运行,而不是模拟器.模拟器给你一个更小的列表.
func createActivityController() -> UIActivityViewController { let someText:String = textView.text let google = NSURL(string:"http://google.com/")! // let's add a String and an NSURL var activityViewController = UIActivityViewController( activityItems: [someText,google],applicationActivities: nil) activityViewController.completionHandler = {(activityType,completed:Bool) in if !completed { print("cancelled") return } if activityType == UIActivityTypePostToTwitter { print("twitter") } if activityType == UIActivityTypeMail { print("mail") } } // you can specify these if you'd like. // activityViewController.excludedActivityTypes = [ // UIActivityTypePostToTwitter,// UIActivityTypePostToFacebook,// UIActivityTypePostToWeibo,// UIActivityTypeMessage,// UIActivityTypeMail,// UIActivityTypePrint,// UIActivityTypeCopyToPasteboard,// UIActivityTypeAssignToContact,// UIActivityTypeSaveToCameraRoll,// UIActivityTypeAddToReadingList,// UIActivityTypePostToFlickr,// UIActivityTypePostToVimeo,// UIActivityTypePostToTencentWeibo // ] return activityViewController }