From 95ff492c00e25533c3928e695abe1ba30b9ccc59 Mon Sep 17 00:00:00 2001 From: ZhangYu0418 Date: Wed, 15 Sep 2021 20:25:10 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=8C=85=E5=90=AB=E7=A9=BA=E5=AD=97=E7=AC=A6?= =?UTF-8?q?=E4=B8=B2=E5=AF=B9=E8=B1=A1=E5=BC=95=E8=B5=B7=E7=9A=84=E5=8F=8D?= =?UTF-8?q?=E5=BA=8F=E5=88=97=E5=8C=96=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../post/api/adapters/ContentMsgAdapter.java | 27 +++++++++++++++++++ .../post/api/models/ThreadContentBean.kt | 3 +++ 2 files changed, 30 insertions(+) create mode 100644 app/src/main/java/com/huanchengfly/tieba/post/api/adapters/ContentMsgAdapter.java diff --git a/app/src/main/java/com/huanchengfly/tieba/post/api/adapters/ContentMsgAdapter.java b/app/src/main/java/com/huanchengfly/tieba/post/api/adapters/ContentMsgAdapter.java new file mode 100644 index 00000000..54da5095 --- /dev/null +++ b/app/src/main/java/com/huanchengfly/tieba/post/api/adapters/ContentMsgAdapter.java @@ -0,0 +1,27 @@ +package com.huanchengfly.tieba.post.api.adapters; + +import com.google.gson.JsonDeserializationContext; +import com.google.gson.JsonDeserializer; +import com.google.gson.JsonElement; +import com.google.gson.JsonParseException; +import com.huanchengfly.tieba.post.api.models.ThreadContentBean; + +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.List; + +public class ContentMsgAdapter implements JsonDeserializer> { + @Override + public List deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { + List list = new ArrayList<>(); + if(json.isJsonArray()){ + json.getAsJsonArray().forEach(element->{ + if(element.isJsonObject()){ + list.add(context.deserialize(element,ThreadContentBean.ContentBean.class)); + } + }); + } + + return list; + } +} diff --git a/app/src/main/java/com/huanchengfly/tieba/post/api/models/ThreadContentBean.kt b/app/src/main/java/com/huanchengfly/tieba/post/api/models/ThreadContentBean.kt index 30b70110..fdf1c605 100644 --- a/app/src/main/java/com/huanchengfly/tieba/post/api/models/ThreadContentBean.kt +++ b/app/src/main/java/com/huanchengfly/tieba/post/api/models/ThreadContentBean.kt @@ -2,6 +2,7 @@ package com.huanchengfly.tieba.post.api.models import com.google.gson.annotations.JsonAdapter import com.google.gson.annotations.SerializedName +import com.huanchengfly.tieba.post.api.adapters.ContentMsgAdapter import com.huanchengfly.tieba.post.api.adapters.PortraitAdapter import com.huanchengfly.tieba.post.api.adapters.SubPostListAdapter import com.huanchengfly.tieba.post.models.BaseBean @@ -158,6 +159,7 @@ class ThreadContentBean : BaseBean() { class OriginThreadInfo { val title: String? = null + @JsonAdapter(ContentMsgAdapter::class) val content: List? = null } @@ -166,6 +168,7 @@ class ThreadContentBean : BaseBean() { val title: String? = null val floor: String? = null val time: String? = null + @JsonAdapter(ContentMsgAdapter::class) val content: List? = null val agree: AgreeBean? = null