gpt4 book ai didi

java - 如何从 Retrofit onResponse 获取数据

转载 作者:行者123 更新时间:2023-12-01 17:40:25 28 4
gpt4 key购买 nike

我想要一个ArrayList<ItemList>从我的改造回调并将其保存为 ArrayList我的类(class)中的变量。换句话说,我需要使用 retrofitList 中的数据即使我离开onResponse方法。最好的方法是什么?这是我的代码。

@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

retrofitList = new ArrayList<>();

Retrofit retrofit = new Retrofit.Builder()
.baseUrl("https://b98afcf5.ngrok.io/")
.addConverterFactory(GsonConverterFactory.create())
.build();
jsonPlaceHolder = retrofit.create(JsonPlaceHolder.class);

Call<List<ItemList>> call = jsonPlaceHolder.getItemList();
call.enqueue(new Callback<List<ItemList>>() {
@Override
public void onResponse(Call<List<ItemList>> call, Response<List<ItemList>> response) {
if(!response.isSuccessful()) {
return;
}
List<ItemList> listOfitems = response.body();
for(ItemList itemList : listOfitems){
retrofitList.add(new ItemList(itemList.getId(),
itemList.getName(),
itemList.getPhone(),
itemList.getIsLocated()));
}
//I WANT TO SAVE "retrofitList" INTO MY CLASS FROM HERE
}

@Override
public void onFailure(Call<List<ItemList>> call, Throwable t) {}
});
}

最佳答案

我建议连载它会让你的生活更轻松。试试thisthis 。在您的类中创建一个方法,您将使用您的列表从 onResponse 调用该方法。将列表保存在某个字段变量中。如果您在填充 onResponse 中的项目之前调用此变量,则它将不会包含它们。

关于java - 如何从 Retrofit onResponse 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60960464/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com