fun RealmModel.isLoaded(): Boolean
この RealmObject を検索するために使用されるクエリが完了しているかどうかを確認します。
非同期メソッド(io.realm.RealmQuery.findFirstAsyncなど) RealmQuery の将来の結果を表す RealmObject を返します。 この点はjava.uty.concurrent.FU機能に似ていると見なされます。
isLoaded()
がtrue
を返すと、クエリでクエリ パラメータに一致するオブジェクトが見つからなかった場合でも、 オブジェクトはクエリ結果を表します。 この場合、RealmObject はnull
オブジェクトになります。
「Null」オブジェクトはnull
を表します。 いずれかのアクセスサーが呼び出されると例外がスローされるため、メソッドを呼び出す前には isValid も確認することが重要です。 一般的なパターンは次のとおりです。
val person = realm.where<Person>().findFirstAsync()
person.isLoaded() // == false
person.addChangeListener { p ->
p.isLoaded() // always true here
if(p.isValid()) {
// It is safe to access this person.
}
}
同期 RealmObject は定義上、このメソッドはそれらに対して常にtrue
を返します。 このメソッドは、管理対象ではないオブジェクト(Realm 外で作成)で呼び出されるとtrue
を返します。
Return
true
クエリが完了した場合は 、クエリが進行中の場合はfalse
になります。
その他の参照