MobilliumQRCodeReader
MobilliumQRCodeReader copied to clipboard
Qr code reader for iOS apps.
MobilliumQRCodeReader
Example
To run the example project, clone the repo, and run pod install
from the Example directory first.
Requirements
- iOS 11.0+
- Swift 5.0+
Installation
CocoaPods
MobilliumQRCodeReader is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'MobilliumQRCodeReader'
Swift Package Manager
The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift
compiler.
Once you have your Swift package set up, adding MobilliumQRCodeReader as a dependency is as easy as adding it to the dependencies
value of your Package.swift
.
dependencies: [
.package(url: "https://github.com/mobillium/MobilliumQRCodeReader.git", .upToNextMajor(from: "1.1.0"))
]
Carthage
Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. To integrate MobilliumQRCodeReader into your Xcode project using Carthage, specify it in your Cartfile
:
github "mobillium/MobilliumQRCodeReader"
Usage
MobilliumQRCodeReader comes with these configs which you can customize for your requirements or you can continue with default values.
Create own QRCodeReaderViewController and get result from QRCodeReaderDelegate.
- PreviewLayer
- CloseButton
- InfoLabel
- GalleryButton
- SettingsAlert
Basic usage:
let viewController = QRCodeReaderViewController()
viewController.delegate = self
viewController.present(on: self)
Advanced usage:
let closeButton = QRCodeReaderConfig.CloseButton(image: ImageProvider.getCloseImage(),
tintColor: .white,
isHidden: false)
let infoLabel = QRCodeReaderConfig.InfoLabel(text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit",
textColor: .white,
font: .systemFont(ofSize: 14),
isHidden: false)
let galleryButton = QRCodeReaderConfig.GalleryButton(title: "Choose from Gallery",
titleColor: .systemBlue,
font: .systemFont(ofSize: 14, weight: .semibold),
backgroundColor: .white,
cornerRadius: 8,
isHidden: false,
height: 32)
let previewLayer = QRCodeReaderConfig.PreviewLayer(backgroundColor: UIColor.gray.withAlphaComponent(0.3).cgColor,
lineWidth: 4,
lineColor: .white,
marginSize: 32,
cornerRadius: 24,
lineDashPattern: [25, 10])
let settingsAlert = QRCodeReaderConfig.SettingsAlert(title: nil,
message: "Go to Settings?",
actionButtonTitle: "Settings",
cancelButtonTitle: "Cancel")
let config = QRCodeReaderConfig(closeButton: closeButton,
infoLabel: infoLabel,
galleryButton: galleryButton,
previewLayer: previewLayer,
settingsAlert: settingsAlert)
let viewController = QRCodeReaderViewController(config: config)
viewController.delegate = self
viewController.present(on: self)
QRCodeReaderDelegate:
func qrCodeReader(_ viewController: UIViewController, didSuccess qrCode: String)
func qrCodeReaderFailed(_ viewController: UIViewController)
func qrCodeReaderClosed(_ viewController: UIViewController)
License
MobilliumQRCodeReader is available under the MIT license. See the LICENSE file for more info.