如何在NSManagedObject Swift扩展中创建托管对象子类的实例?
当创建一个扩展助手来NSManagedObject创建一个新的托管对象子类时,swift提供了Self模仿的类型,instancetype这很好,但我似乎无法进行类型转换AnyObject。下面的代码没有编译错误'AnyObject'不能转换为'Self'
救命?
extension NSManagedObject{
class func createInContext(context:NSManagedObjectContext) -> Self {
var classname = className()
var object: AnyObject = NSEntityDescription.insertNewObjectForEntityForName(classname, inManagedObjectContext: context)
return object }
class func className() -> String {
let classString = NSStringFromClass(self)
//Remove Swift module name let range = classString.rangeOfString(".", options: NSStringCompareOptions.CaseInsensitiveSearch, range: Range<String.Index>(start:classString.startIndex, end: classString.endIndex), locale: nil)
return classString.substringFromIndex(range!.endIndex)
}}
HUWWW
慕沐林林
手掌心
慕的地10843
随时随地看视频慕课网APP