无法从RLMObject强制转换为Object的子类?

时间:2017-04-21 17:30:00

标签: swift realm

SongRLMObjecttypealias Object)的子类,在我的应用中使用,包括searchViewController(_:cellForObject:atIndexPath:)

let song = object as! Song

但是在我的prepare(for segue:)方法(下面)中,当我尝试执行相同的向下转换时,编译器说“从'RLMObject'转换为无关类型'Song'总是失败。”

if let row = tableView.indexPathForSelectedRow?.row {
    YpbApp.currentRequest?.songObject = results!.object(at: UInt(row)) as? Song
}

这没有意义,这里有什么不对?

1 个答案:

答案 0 :(得分:3)

RLMObject不是Object的类型;它们是完全不同的类,具有不同的接口。听起来您正在尝试混合使用不受支持的Swift和Objective-C API。