swift - 如何使用 UIActivityViewController 创建用户交互式推文或 Facebook 帖子

标签 swift twitter uiactivityviewcontroller

我正在尝试弄清楚如何创建类似于下面 SoundCloud 的用户交互式帖子或推文:

(Shared directly from Sound Cloud)

以黄色突出显示的部分是我感兴趣的部分,因为据我所知,当涉及到 UIActivityViewController(这是 Sound Cloud 为此使用的)时,唯一可用于共享的对象是图像和字符串。

此外,如果您点击以黄色突出显示的部分,则会在 Twitter 上弹出此屏幕:

enter image description here

他们是怎么做到的!?他们有一个暂停按钮和一切!

这是我的尝试...

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
}

关于swift - 如何使用 UIActivityViewController 创建用户交互式推文或 Facebook 帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38820445/

相关文章:

php - 让 Twitter 好友允许用户在帖子中标记他们

ios - UIActivityViewController 中的复制链接按钮

ios - 确定在 UIActivityViewController 中单击了哪个图标

ios - 获取在 View 层上完成的动画百分比

swift - 如何导出使用 SecKeyGeneratePair 生成的公钥 <SecKey> 以在服务器上使用?

ios - 选择器 View 未更新

ios - 在单个 UIActivityViewController 中为不同的服务提供不同的内容

ios - 关于 tableView 双对称

twitter - 如何将一条推文集成到您的网站中

objective-c - 如何创建类似于 Twitter iPhone 应用程序中“我”选项卡下的第一部分的自定义 UITableViewCell