• Stars
    star
    504
  • Rank 84,226 (Top 2 %)
  • Language
    Swift
  • License
    MIT License
  • Created almost 9 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple QRCode detector and generator in Swift

SwiftQRCode

Simple QRCode detector and generator in Swift

Features

  • QRCode detector
  • QRCode generate

Requirements

  • iOS 8.0+
  • Xcode 7.0

Installation

CocoaPods

CocoaPods 0.36 adds supports for Swift and embedded frameworks. You can install it with the following command:

$ gem install cocoapods

To integrate SwiftQRCode into your Xcode project using CocoaPods, specify it in your Podfile:

platform :ios, '8.0'
use_frameworks!

pod 'SwiftQRCode'

Then, run the following command:

$ pod install

You should open the {Project}.xcworkspace instead of the {Project}.xcodeproj after you installed anything from CocoaPods.

For more information about how to use CocoaPods, I suggest this tutorial.

Usage

Swift

  • import framework
import SwiftQRCode
  • scan qrcode
let scanner = QRCode()

override func viewDidLoad() {
    super.viewDidLoad()

    scanner.prepareScan(view) { (stringValue) -> () in
        println(stringValue)
    }
    scanner.scanFrame = view.bounds
}

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)

    // start scan
    scanner.startScan()
}
  • generate qrcode image
// generate qrcode
iconView.image = QRCode.generateImage("Hello SwiftQRCode", avatarImage: UIImage(named: "avatar"), avatarScale: 0.3)

Objective-C

  • import "ProjectName-Swift.h"

头文件格式是 "项目名称-Swift.h"

#import "QRCodeDemoObjc-Swift.h"
  • scan qrcode
@property (nonatomic, strong) QRCode *scanner;

- (void)viewDidLoad {
    [super viewDidLoad];

    // alloc and prepare for scan
    self.scanner = [[QRCode alloc] init];
    [self.scanner prepareScan:self.view completion:^(NSString * __nonnull stringValue) {
        NSLog(@"%@", stringValue);
    }];
}

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];

    // start scan
    [self.scanner startScan];
}
  • generate qrcode image
// generate qrcode
[QRCode generateImage:@"Hello SwiftQRCode" avatarImage:[UIImage imageNamed:@"avatar.jpg"] avatarScale:0.25];