Olá. Gostaria da ajuda de vocês para eliminar apenas de uma ListView
os dados iguais em uma coluna “produtos” do meu database Firebase, com valores maiores do que o mínimo na coluna “valor”. Sem apaga-los do Firebase, apenas na exibição.
Gostaria de exibir apenas um item na ListView
se houver repetidos. O que tenho feito está conforme a imagem. como faço para remover os itens iguais nos produtos?
Quero eliminar os itens repetidos, como na figura abaixo:
Deixando apenas os itens com valores menores e somando as quantidades. O código que construi até agora foi este:
spRelatorio.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, final int position, long id) {
final String idPro = spRelatorio.getSelectedItem().toString();
if(position != 0 && idPro.equals("Global")){
cotacao = new ArrayList<>();
final ListView listView = (ListView) findViewById(R.id.listViewGlobal);
adapter = new CotacaoAdapter(GlobalActivity.this, cotacao);
listView.setAdapter(adapter);
final DatabaseReference bdCotacao;
bdCotacao = FirebaseDatabase.getInstance().getReference();
txtTipoRel.setText(String.valueOf("Relatório de Cotação Global"));
textViewGbNome.setText(String.valueOf(" PRODUTOS/COTAÇÃO "));
textViewGbValor.setText(String.valueOf(" VALOR "));
textViewGbQtd.setText(String.valueOf(" QTD"));
spRelatorio.setSelection(0);
bdCotacao.child("bd_cotacoes").orderByChild("produtoCotacao")
.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
cotacao.clear();
for (DataSnapshot dados:dataSnapshot.getChildren()) {
Cotacao relGlobal = dados.getValue(Cotacao.class);
cotacao.add(relGlobal);
}
adapter.notifyDataSetChanged();
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
Já tentei várias formas como para remover, mas sem sucesso. Segui vários exemplos, mas não fizeram o que eu esperava. alguém pode me ensinar como fazer esta parte do código, e onde inserir para remover os itens repetidos com valores maiores, e somar as quantidades. Fico grato!