作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是改造新手,我想保存来 self 的 api 的响应,就像数组列表上的对象一样。
我已经搜索了解决方案,但我不知道回调方法是如何工作的,而且我不太理解。
public ArrayList<Match> recolectar_partido(){
final ArrayList<Match> datos=new ArrayList<Match>();
Call<List<MatchResponse>> call = RetrofitClient.getInstance().getApi().getmatch();
call.enqueue(new Callback<List<MatchResponse>>() {
@Override
public void onResponse(Call<List<MatchResponse>> call, Response<List<MatchResponse>> response) {
matchlist=response.body();
for (MatchResponse fix:matchlist) {
Integer idfix=fix.getId_fixture();
Integer idsta=fix.getId_stadium();
String fecha=fix.getFecha();
String hora=fix.getHora();
Match variable= new Match(idfix,idsta,fecha,hora);
datos.add(variable);
}
}
@Override
public void onFailure(Call<List<MatchResponse>> call, Throwable t) {
Toast.makeText(getApplicationContext(),"error de conexion",Toast.LENGTH_SHORT).show();
}
});
return datos;
}
我想要填充数组列表。
最佳答案
执行call.execute()
而不是enqueue
。例如
final ArrayList<Match> datos=new ArrayList<Match>();
Call<List<MatchResponse>> call = RetrofitClient.getInstance().getApi().getmatch();
matchlist= call.execute().body();
for (MatchResponse fix:matchlist) {
Integer idfix=fix.getId_fixture();
Integer idsta=fix.getId_stadium();
String fecha=fix.getFecha();
String hora=fix.getHora();
Match variable= new Match(idfix,idsta,fecha,hora);
datos.add(variable);
}
return datos;
关于java - 如何将从 api 收到的响应保存在 arraylist 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58159344/
我是一名优秀的程序员,十分优秀!