QRDispenser
是一个轻量级的库,用于在你的应用程序中生成二维码图像 (UIImage
)。它仅使用原生组件,不依赖于其他库。这允许你 fork 该项目并编写自己的实现,以防你需要它,而无需担心外部框架。
该库的结构很简单:只有一个类供你使用,那就是 QRDispenser
。它有以下方法:
generate(from: String, tint: UIColor)
generate(url: URL)
generate(email: String)
generate(phoneNumber: String)
generate(wiFiSSID: String, password: String, encryption: WiFiEncryption)
generate(latitude: Double, longitude: Double, altitude: Double)
generate(location: CLLocation)
每个方法都会返回一个 UIImage
对象或抛出一个错误。 错误枚举是 QRDispenserError
。 代码对每个方法都进行了充分的注释,如果你需要更多细节,请直接在 Xcode 上查看。
还有一个很棒的功能,我计划在未来扩展它,那就是 URL
的扩展。 该扩展有一个计算属性,如果 url 是网络 url (目前没有本地 url),它将返回一个包含该 url 的二维码。 它的工作方式如下:
let url = "https://andrealufino.com"
let qrImage = url.qrRepresentation
我想将这种结构扩展到其他类型,例如字符串、联系人和事件。
这个库至少需要 iOS 14。
该库可通过 Swift Package Manager 获得。 只需添加此存储库的 url 即可。
Andrea Mario Lufino, 自 2010 年以来的 iOS 开发者。