我如何从翻新的onResponse中获取数据

问题描述 投票:0回答:1

你好。我想从我的Retrofit回调中获取一个ArrayList并将其另存为我的课程中的ArrayList变量。换句话说,即使离开onResponse方法,我也需要使用“ retrofitList”中的数据。最好的方法是什么?这是我的代码。谢谢。

@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) {}
    });
}
java android asynchronous callback retrofit
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.