【发布时间】:2017-10-19 20:54:19
【问题描述】:
我有一个 recyclerview,我想在回收器中填充来自 json 的数据时显示“正在加载...”消息或旋转圆圈。 这是我的回收站的代码:
arrayList = new ArrayList<>();
adapter = new ListAdapterGrupat2(this, arrayList, Comanda.class);
list.setAdapter(adapter);
final Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://mysite/")
.addConverterFactory(GsonConverterFactory.create())
.build();
service = retrofit.create(API.class);
if (myuser.equals("1")) {
service.getComenzileMele(user).enqueue(listener);
} else {
service.getComenziGrupat().enqueue(listener);
}
}
Callback<List<CustomObject>> listener = new Callback<List<CustomObject>>() {
@Override
public void onResponse(Call<List<CustomObject>> call, Response<List<CustomObject>> response) {
arrayList.clear();
arrayList.addAll(response.body());
adapter.notifyDataSetChanged();
}
@Override
public void onFailure(Call<List<CustomObject>> call, Throwable t) {
Toast.makeText(ComenziGrupatActivity.this, "ERROR", Toast.LENGTH_SHORT).show();
}
};
这是适配器:
public class ListAdapterGrupat2 extends RecyclerView.Adapter<ListAdapterGrupat2.ViewHolder> {
public ListAdapterGrupat2(Context context, ArrayList<CustomObject> arrayList, Class<?> cls) {
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_programarigrupat, parent, false);
return new ViewHolder(v);
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
CustomObject obj = arrayList.get(position);
holder.item2.setText(obj.getItem2());
}
【问题讨论】:
-
我们需要您的适配器代码来执行此操作。
-
@deathangel908 我应该在哪里让它可见?
标签: java android android-recyclerview