Java 我想在recyclerview中显示我的所有数据
也许我的问题是初学者的问题 我有这个JSON,作为一个响应,我发布了一个“id”,结果是这样的,因为你可以看到我的响应以方括号[]开始,我无法更改它Java 我想在recyclerview中显示我的所有数据,java,android,json,retrofit2,Java,Android,Json,Retrofit2,也许我的问题是初学者的问题 我有这个JSON,作为一个响应,我发布了一个“id”,结果是这样的,因为你可以看到我的响应以方括号[]开始,我无法更改它 [{ "id": "1111", "nam": "name", "namk": "surename", "lygn": [{ "id&q
[{
"id": "1111",
"nam": "name",
"namk": "surename",
"lygn": [{
"id": "3003",
"mas": "lurem11",
"yeg": "lurem11"
},
{
"id": "5121",
"mas": "lurem",
"yeg": "lurem"
}],
"lisar": [
{
"id": "3",
"sharh": "lurem22",
"amal": "lurem22",
"toz": "1",
"tb": "1"
},
{
"id": "2113",
"sharh": "0",
"amal": "lurem",
"toz",
"tb": "1965/06/11"
}
]
}]
这是我的要求:
@POST("isargaran")
@Headers({"Content-Type: application/json"})
Call<List<ForAll>> postbyid(@Body ForAll md);
(以及“lisar”的第一个数据)
我不想在这里分享我的适配器,让它显得拥挤不堪,我的问题是,我如何在RECYCLERVIEW中展示我的“lygn”和“lisar”(我每个都有一个回收器)
谢谢你们,请帮帮我
**我想问题是因为我的回答是以[]开头的。首先,您需要分开回答
ForAll resource = response.get(0);
现在,您需要在recycler视图适配器中传递单独的数据
List<Ygn> lygnData = resource.getygn();
List<lisar> lisarData = resource.getlisar();
List lygnData=resource.getygn();
List lisarData=resource.getlisar();
使用recyclerview设置适配器,如下所示
//Pass your list in to adapter
var adapter = RecyclerViewAdapter(list)
recyclerView.layoutManager = LinearLayoutManager(context)
recyclerView.adapter = pendingAdapter
这是你的adapater课程
class RecyclerViewAdapter(
private val list: List<String>
) : RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val v = LayoutInflater.from(parent.context).inflate(R.layout.row, parent, false) // pass your row (.xml) Here
return ViewHolder(v)
}
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
// Bind Your Data Here
}
override fun getItemCount(): Int {
return list.size
}
class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView)
}
class RecycleServiceAdapter(
私有val列表:列表
):RecyclerView.Adapter(){
override onCreateViewHolder(父级:ViewGroup,viewType:Int):ViewHolder{
val v=LayoutInflater.from(parent.context).膨胀(R.layout.row,parent,false)//在此处传递行(.xml)
返回视窗支架(v)
}
覆盖BindViewHolder(holder:ViewHolder,位置:Int){
//在这里绑定您的数据
}
重写getItemCount():Int{
返回列表。大小
}
类ViewHolder(itemView:View):RecyclerView.ViewHolder(itemView)
}
您如何解析您的json响应?@sneharcForAll result=forAlls.get(position)代码><代码>result.getLisar().get(position).getTb()
在我的适配器中对不起,如果我搞错了,女士请检查这些链接中的适配器类:@sneharc它帮不了我,我的应用程序中有其他回收器显示所有数据(正是我想要的,我的意思是我知道如何将适配器用于简单的JSON,比如那些链接中的JSON)但我的问题是这些列表(“lygn”和“lisar”)“谢谢你,我知道,但我仍然有一个数据,无法显示所有数据。你能和我共享你的适配器类吗?所以我很快给你一个解决方案。适配器中设置了哪个数组大小?@Override public int getItemCount(){return modelArrayList.size();}我返回了modelArrayList.size();但我只有索引0
//Pass your list in to adapter
var adapter = RecyclerViewAdapter(list)
recyclerView.layoutManager = LinearLayoutManager(context)
recyclerView.adapter = pendingAdapter
class RecyclerViewAdapter(
private val list: List<String>
) : RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val v = LayoutInflater.from(parent.context).inflate(R.layout.row, parent, false) // pass your row (.xml) Here
return ViewHolder(v)
}
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
// Bind Your Data Here
}
override fun getItemCount(): Int {
return list.size
}
class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView)
}