我是Ios的新手.我正在学习迅速和被忽视的对象c.
目前,我正在编写一个带有swift和xcode 6.1的演示,它可以扫描来自摄像头的qrcode和条形码或来自图像库的图像.
我知道AVFoundation框架支持扫描qrcode和条形码,但它只能从相机扫描.
我搜索并找到zbarSDK,它支持来自摄像头和图像的扫描码.我在http://zbar.sourceforge.net/iphone/sdkdoc/和Swift中的NSFastEnumeration中执行指令(将代码转换为swift).但是,当我运行app时,从库中选择图像后,就会发生错误.
这是我的代码
import UIKit
import AVFoundation
extension ZBarSymbolSet: SequenceType {
public func generate() -> NSFastGenerator {
return NSFastGenerator(self)
}
}
class FirstViewController: UIViewController, ZBarReaderDelegate, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
let reader = ZBarReaderController()
@IBOutlet weak var lblResult: UILabel!
@IBOutlet weak var imgView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
reader.delegate = self
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func scanCode(sender: AnyObject) {
let scanner …Run Code Online (Sandbox Code Playgroud) 我是Ios的新手.我正在学习迅速和被忽视的对象c.
目前,我正在编写一个带有swift和xcode 6.1的演示,它可以扫描来自摄像头的qrcode和条形码或来自图像库的图像.
之前,我尝试使用zbar SDK来做到这一点,但它发生错误,我不知道如何修复它,我在帖子中发布此错误:扫描qrcode和条形码从相机和图像从swift图像库中选取,但没有人回答.
我正在尝试使用ZXingObjC扫描来自图像和相机的qrcode和条形码https://github.com/TheLevelUp/ZXingObjC,我读了它的用法并尝试转换为swift.但它发生了错误,我不知道如何解决它.
这是我的代码:
import UIKit
class ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
@IBOutlet weak var lblResult: UILabel!
@IBOutlet weak var imgView: UIImageView!
var imagePicker = UIImagePickerController()
override func viewDidLoad() {
super.viewDidLoad()
imagePicker.delegate = self
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func scanCode(sender: AnyObject) {
imagePicker.sourceType = .PhotoLibrary
imagePicker.allowsEditing = false
presentViewController(imagePicker, animated: true, completion: nil)
}
func imagePickerController(picker: UIImagePickerController!, didFinishPickingMediaWithInfo info: NSDictionary!) …Run Code Online (Sandbox Code Playgroud)