以下是ObjC中的代码:
// get the decode resultsID<NSFastEnumeration> results = [info objectForKey: ZbarReaderControllerResults];ZbarSymbol *symbol = nil;for(symbol in results) // just grab the first barcode break;
到目前为止,我试图找到如何做到这一点,但是这不行,这里是swift代码:
var results: ZbarSymbolSet = infoDictionary?.objectForKey(ZbarReaderControllerResults) as ZbarSymbolSet var symbol : ZbarSymbol? = nil; for symbol in results { //just grab first barcode break; }
错误进入条件 – “ZbarSymbolSet”没有名为“Generator”的成员
我究竟做错了什么?
这是屏幕截图
解决方法 在一段时间之后,swift框架文件,我终于找到这个漂亮的类叫NSFastGenerator. NSSet和朋友似乎使用相同的Generator.对于ZbarSymbolSet,以下是如何将其扩展为支持for-in循环:
extension ZbarSymbolSet: SequenceType { public func generate() -> NSFastGenerator { return NSFastGenerator(self) }}
更新:看起来像Swift 2.0的协议扩展修复了我们!
总结以上是内存溢出为你收集整理的ios – Swift中的NSFastEnumeration全部内容,希望文章能够帮你解决ios – Swift中的NSFastEnumeration所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)