アダプタでaddAll()メソッドの代わりに使用できるのは、レルムバージョン2.0.1を使用しています。そのメソッドは廃止予定です。すべてのデータを取得しようとしていますAPIから、私のデータベースに保存し、私のアダプタに渡し、私は次のように使用しています:RealMResultsではaddAll()メソッドがサポートされていません
public void getData(int page) {
if (GlobalModel.existeConexao()) {
Call<PedidosResponse> call = ((NavigationMain) getActivity()).apiService.getPedidos(GlobalModel.getToken(), GlobalModel.geEmpresaId(), page);
call.enqueue(new Callback<PedidosResponse>() {
@Override
public void onResponse(Call<PedidosResponse> call, Response<PedidosResponse> response) {
if (response.isSuccessful()) {
for (int i = 0; i < response.body().getPedidos().size(); i++) {
Pedidos mPedido = response.body().getPedidos().get(i);
int myInt = (mPedido.isProjecao()) ? 1 : 0;
if (!mRepositorio.checkIfExists(mPedido.getId())) {
mRepositorio.addPedido(mPedido.getId(), mPedido.getCliente_id(), mPedido.getData_hora(), mPedido.getData_pedido_cliente(), mPedido.getPrevisao_entrega(), mPedido.getFrete_tipo(), myInt, mPedido.getObservacao(), mPedido.getAliquota_projecao(), mPedido.getStatus(), mPedido.getPedido_cliente());
}
}
arraypedidos = mRepositorio.findAllPedidos();
if (mPedidosAdapter == null) {
mPedidosAdapter = new PedidosAdapter(getActivity(), arraypedidos);
listpedidos.setAdapter(mPedidosAdapter);
} else {
mPedidosAdapter.setData(arraypedidos);
}
}
}
@Override
public void onFailure(Call<PedidosResponse> call, Throwable t) {
if (t.getMessage() != null) {
Log.v("pedidos", t.getMessage());
}
}
});
} else {
Toast.makeText(getActivity(), "Verifique sua conexão", Toast.LENGTH_SHORT).show();
}
}
しかし、私は、私はこのメッセージを取得するアプリを実行すると:
java.lang.UnsupportedOperationException: This method is not supported by RealmResults.
は 'RealmResult'または' RealmList'の 'pediosItens'オブジェクトですか? –
@MohammedAtif pedidosItensはRealmResultsです – AND4011002849
Realmで操作を実行しているときにRealmResultまたはRealmListが優先されるが、他の操作ではListを使用するのが好ましいので、リスト pedidosItens = new ArrayList <>() ' –