在社交媒体上分享图片

Sharing images on social media

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

最好的方法是什么?

我建议您使用 UIStackView

我认为您应该坚持 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 的完整列表,请参阅 here