首页 > 解决方案 > 在社交媒体上分享图像

问题描述

在我正在构建的应用程序中,我想在社交媒体上分享图像。UIActivityViewController我希望这些单独的按钮可以将图像共享给按钮所代表的社交媒体,而不是使用 Apple 的(一次显示所有选项)。

做这个的最好方式是什么?

显示社交媒体按钮的 UI 设计屏幕截图

标签: swiftswift5

解决方案


我认为您应该坚持UIActivityViewController避免在 App Store 发布审核过程中最终应用被拒绝。您可以为您创建的每个按钮创建一个方法,该方法UIActivityViewController仅针对预期的社交网络打开,为此您必须排除ActivityType与按钮的社交网络相关的所有按钮:

@IBAction shareOnFacebook(_ sender: UIButton) 
{
    let activityViewController = UIActivityViewController(activityItems: ["Your message"], applicationActivities: nil)
    activityViewController.excludedActivityTypes = [
        // Here: exclude all ActivityType except postToFacebook ...
    ]    

    present(activityViewController, animated: true)
}

有关可用的完整列表,请ActivityType参见此处


推荐阅读