我尝试在RELEASE
配置中构建应用程序时看到以下错误。当我在DEBUG
模式下构建相同的应用程序时,看起来一切正常。
UIStoryboard'init(name:bundle)'不可用:使用对象
施工'UIStoryboard(name:bundle)''init(name:bundle)'已被
在此处明确标记为不可用。
我确定几天后,同一代码在RELEASE配置中运行良好(没有任何错误)。
这是引发错误的行:
让Storyboard = UIStoryboard(名称:“Main”,捆绑包:Bundle.main)
我正在Xcode版本 8.3.3(8E3004b)中进行编译。
谢谢。
最佳答案
似乎有些Xcode或Swift编译器错误。
项目中还有另一个错误(仅在RELEASE配置中)
filteredFavoriteList = searchText.isEmpty ? [] : favoriteList.filter({(report: AnyObject) -> Bool in
return report.reportTitle.localizedCaseInsensitiveContains(searchText)
})
由于AnyObject类型的“报告”没有任何属性“reportTitle”,因此这段代码在relese配置中引发错误(尽管它在调试配置中有效)。
我对此进行了以下修复:
filteredFavoriteList = searchText.isEmpty ? [] : favoriteList.filter({(report: AnyObject) -> Bool in
if let report = report as? MyClass{
return report.reportTitle.localizedCaseInsensitiveContains(searchText)
}else{
return false
}
})
现在不再有UIStoryboard错误,我可以在发布配置中构建该应用程序。
因此,该行没有错误,但是由于其他一些原因/错误,在这里抛出了错误。
let storyboard = UIStoryboard(name: "Main", bundle: Bundle.main)
谢谢。
关于ios - 释放配置中的UIStoryboard'init(name:bundle)'问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45684818/