Communicado

iOS 上的分享变得简单。

BuddyBuild Pod Version Swift Version License MIT Plaform


您是否厌倦了一遍又一遍地重写相同的分享代码?

我也是!

这就是我编写 Communicado 的原因!让我们向您展示如何完成。

分享

首先需要了解的是,您可以从任何符合 SharingCapableViewControllerUIViewController 中进行分享。添加此协议后,您将在 UIViewController 上获得一个 share 函数,该函数支持多种内置分享类型。

您可以分享到

每个分享目标都需要参数。让我们尝试一个简单的例子。

let heartImageData = UIImagePNGRepresentation(myHeartImage)
let attachment = Attachment(attachmentType: AttachmentType.png, filename: "heart.png", data: heartImageData)
let messageParameters = MessageShareParameters(message: "I ❤️ Communicado", attachments: [ attachment ])

现在让我们调用唯一可用的 唯一 方法。

self.share(messageParameters)

完成后,您将获得一个统一的回调,其中包含分享尝试结果的信息。

self.sharingCompleted = { shareResult in
    print("Was successful? \(shareResult.success)")
    print("Sharing service: \(shareResult.sharingService)")
}

您也可以对其他分享目标执行相同的操作。

self.share(MailShareParameters)
self.share(SocialShareParameters)
self.share(ActivityShareParameters)
self.share(PhotosShareParameters)
self.share(PasteboardShareParameters)

样式

您还可以使用 Communicado 通过几行代码来设置 MFMailComposeViewControllerMFMessageComposeViewController 的样式。这绕过了 Apple 为了设置内置分享控制器样式而让您经历的所有繁琐步骤。

您只需

self.sharingTitleTextAttributes = [
    NSAttributedString.Key.foregroundColor : UIColor.white,
    NSAttributedString.Key.font : UIFont.systemFont(ofSize: 21.0)
]

self.sharingBarButtonItemAttributes = [
    NSAttributedString.Key.foregroundColor : UIColor.purple,
    NSAttributedString.Key.font : UIFont.systemFont(ofSize: 16.0)
]

self.sharingBackgroundColor = UIColor.blue

即可获得如下所示的效果

漂亮,不是吗?

要求

安装

对于 Swift 3 支持,请使用 2.0.2 版本。
对于 Swift 4 支持,您可以使用 3.0 版本。
对于 Swift 4.2 支持,您可以使用 3.1 或更高版本。
对于 Swift 5.1 支持,您可以使用 3.2.0 或更高版本。

您可以使用 SPM 安装 Communicado

您也可以通过将 Communicado 添加到您的 Podfile 中,使用 CocoaPods 安装 Communicado

platform :ios, '9.0'
use_frameworks!

pod 'Communicado'

或者通过手动安装,下载 Source 文件夹中的所有文件并将它们拖放到您的项目中。

关于我

大家好,我是 Joe,在网络上到处都是,尤其是在 Twitter 上。

许可证

请参阅 许可证 以获取有关如何使用 Communicado 的更多信息。我保证它不是 GPL,因为我不是“那种人”。

结束了吗?

是的,这就是结尾。希望 Communicado 能让您的生活更轻松。它可能无法帮助您支付房租,但它可能会使在您的应用程序中分享变得更容易。