最終的に次のようなコードで表現したいJSONデータが入ってきたとします。
data class Parent(val id: String, val children: List<Child>)
data class Child(val id: String, val parentId: String)
しかし、入ってくる JSON は次のようなものです。
{
"id": "parent-1",
"children": [
{
"idPrefix": "child",
"idNum": "1"
},
{
"idPrefix": "child",
"idNum": "2"
},
{
"idPrefix": "child",
"idNum": "3"
}
]
}
つまり、次の目的でカスタム アダプターを使用する必要があります。
Child.id
各子を解析するときに適切に構成します。child.parentId
親を解析するときに、各子に を追加します。
とChildAdapter
を組み合わせることができるa を書くのは簡単です。しかし、ネストの第 2 層に到達すると、どうすればよいかわかりません。全体を 1 つの大きなデータの塊として解析してから、すべて手動で操作したくありません。これを処理するより良い方法はありますか (2 つ以上のレベルをネストする可能性があります)?idPrefix
idNum
さらに、これは両方の方向、fromJson()
つまりtoJson()
.