2016-08-18 51 views
3

在Java中,你可以得到非托管对象与此:如何从Swift中的Realm查询获取非托管对象?

Realm realm = Realm.getDefaultInstance(); 
realm.beginTransaction(); 
dogs = realm.where(Dog.class).lessThan("age", 2).findAll() 
realm.commitTransaction(); 
realm.close() 

我怎样才能做到这一点斯威夫特与境界 - 可可?

回答

6

要想从境界的非托管对象斯威夫特可以使用init(value: AnyObject)初始化:

let unmanagedObject = Object(value: existingObject) 

BTW您的代码示例中你没有得到一个非托管对象,以及,你需要使用这样的事情Java:

RealmObject unmanagedObject = Realm.copyFromRealm(RealmObject existingObject) 

查看更多的docs

+0

当我这样做时,复制领域对象中也是领域对象的任何字段都不会被复制 - 它们仍然是受管领域对象。这是预期的行为? – shoe

+0

是的,你必须手动处理。 – Dmitry