代码之家  ›  专栏  ›  技术社区  ›  Dr4ke the b4dass

在recyclerview中显示不同类型的对象

  •  0
  • Dr4ke the b4dass  · 技术社区  · 4 年前

    我有一个来自搜索结果的json,如何在recyclerview中显示它?我要显示外观、衣物、事件、标签。搜索可以返回任何数量的这些项目,我想显示它们。我是否应该将这些项转换为一个公共类?或者如何为每个对象创建不同的适配器?我很困惑。

    {
    results: {
    clothing_items: [
    {
    id: 422,
    created_at: "2020-01-20 11:23:10 -0500",
    image: "",
    last_event_date: null,
    name: "desk",
    thumbnail: "",
    type_of: "accessories"
     }
    ],
    events: [
    {
      id: 157,
     date: "2020-01-14 09:53:00 -0500",
     image: null,
     name: ""
    }
    ],
    looks: [
    
    ],
    tags: [
     {
    id: 97,
    created_at: "2020-01-20 10:46:12 -0500",
    title: "greatest person"
     }
    ]
    }
    }
    
    0 回复  |  直到 4 年前
        1
  •  0
  •   ahmed shaaban    4 年前

    1-为了使您的代码可读性和类型安全性,并且我的代码在任何时候都可以扩展,您应该使每个代码都在sperated类中,并且在改型中使用gson可以帮助您在没有任何额外代码的情况下将json与类相匹配

    2-一些库(比如volley)可以帮助您解码json对象,所以如果您想头痛,可以使用它

    4-如果它们不使用相同的设计,您将需要使用不同的设计布局,并且视图的膨胀将根据适配器的构造函数的标志路径而改变

    5-您可以将所有属性放在一个类中,但不首选它会使您丢失类型安全