我正在使用改造来获取一些信息。我想将该信息存储在本地变量中,以便如果用户决定 Collection 该项目,我可以将其本地保存在设备上。
public void fetchTrailerData(int movieId) {
ApiInterface apiServies = ApiClient.getClient().create(ApiInterface.class);
Call<TrailerResponse> call = apiServies.getTrailersForMovie(movieId, BuildConfig.OPEN_WEATHER_MAP_API_KEY);
call.enqueue(new Callback<TrailerResponse>() {
@Override
public void onResponse(Call<TrailerResponse> call, Response<TrailerResponse> response) {
List<Trailer> trailers = response.body().getResults();
if (trailers != null && trailers.size() > 0 && !trailers.isEmpty()) {
Utilities util = new Utilities(mContext);
util.populateTrailer(mView, trailers);
}
}
@Override
public void onFailure(Call<TrailerResponse> call, Throwable t) {
}
});
}
当我寻找解决方案但没有找到解决方案时,有人可以为我指出正确的方向吗?
最佳答案
不,您不能使用局部变量。一旦执行流程离开onResponse
方法,局部变量将被清除。
相反,使用实例变量并将返回的结果分配给它们。
Here是这样做的一个要点示例。
关于java - 您将如何保存改造的列表响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40336644/