ios – Swift 1.2与.lowercaseString崩溃

ios – Swift 1.2与.lowercaseString崩溃,第1张

概述我有这个相对简单的方法来过滤tableView的数据源对象. func filterCategoriesWithQuery(query: String) { placeCategoriesTableViewDataSource.filteredCategories = placeCategoriesTableViewDataSource.placeCategories.f 我有这个相对简单的方法来过滤tableVIEw的数据源对象.

func filterCategorIEsWithquery(query: String) {    placeCategorIEstableVIEwDataSource.filteredCategorIEs        = placeCategorIEstableVIEwDataSource.placeCategorIEs.filter({ (category: JsON) -> Bool in        let categoryname = (category["name"].stringValue).lowercaseString        if categoryname.hasPrefix(query.lowercaseString)  {            return true        } else {            return false        }    })    generictableVIEw.reloadData()

在更新到Swift-1.2 / Xcode-6.3b之前,这非常有效,但现在当使用lowercaseString时它总是崩溃.看来lowercaseString方法有一个BUG?

使用NSZombIEEnabled或者在malloc_free_break中断,我可以看到它与[CFString release]崩溃:发送到解除分配的实例的消息

难道我做错了什么?这是一个错误吗?任何解决方法?

解决方法 这是Swift 1.2的第一个测试版中的一个错误.
在Apple开发者论坛上,Chris Lattner提到 a similar bug with uppercaseString应该在下一个测试版中修复.

在此之前,作为一种变通方法,您可以尝试在项目的构建设置中将Swift编译器优化更改为none.这帮助我解决了与Array相似的问题.

总结

以上是内存溢出为你收集整理的ios – Swift 1.2与.lowercaseString崩溃全部内容,希望文章能够帮你解决ios – Swift 1.2与.lowercaseString崩溃所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1025966.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-23
下一篇2022-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存