LoginSignup
37
37

More than 5 years have passed since last update.

iOS定番のバーコード読み取りライブラリZbarをSwiftで使う

Last updated at Posted at 2015-05-20

ネット上に載ってなかったので書いてみた

iOS定番のバーコード読み取りライブラリZbarをObjective-CからSwiftに書き換えてみた。

まずこんな感じでクラスにextensionさせる
と言うかほぼここがみそ!

ViewController
extension ZBarSymbolSet: SequenceType {
    public func generate() -> NSFastGenerator {
        return NSFastGenerator(self)
    }
}

class ViewController: UIViewController,ZBarReaderDelegate{
        //ViewControllerの処理
}

続いてバーコード読み込みのビューを作成。

ViewController
//ZBarReaderViewControllerクラスからインスタンス生成
var reader = ZBarReaderViewController()

//各種設定を盛り込む
//zbarのコントローラーを非表示
reader.showsZBarControls = false
reader.readerDelegate = self

//Flash自動点灯
reader.readerView.torchMode = 0

//オーバーレイの呼び出し
var scanner = ZBarImageScanner()

//カメラビューの上に載せたいもの ボタン等 scanViewOverlay()はなにかViewを返す関数を作る
reader.cameraOverlayView = scanViewOverlay()

scanner = reader.scanner
scanner.setSymbology(ZBAR_I25, config: ZBAR_CFG_ENABLE, to: 0)

//カメラビューの呼び出し        
presentViewController(reader, animated: true, completion: nil)

ようやく重い腰を上げSwift化しました。
Ovjective-Cに比べコード量も減り使いやすくなったと思います。

37
37
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
37
37