Insert images and text into Parseadapter

Asked

Viewed 32 times

1

I have an Android app, where I use the Parse server with 100 registered stores. I need to insert into an Adapter 3 text information and one image information. The text I could already insert, but I can’t do the same with the images, I tried to pass a list of bitmap as a parameter to Parseadapter, but I can’t.

Follow a little code

-

public void buscarLojas()
{
    //
    progressDialog = ProgressDialog.show(ActivityListarTodos.this, "", "Carregando...", true);

    //
    final List<Bitmap> bitmapList = new ArrayList<Bitmap>();

    //
    final ParseQuery<Lojas> query = new ParseQuery<>("Lojas");

    query.findInBackground(new FindCallback<Lojas>()
    {
        @Override
        public void done(final List<Lojas> list, ParseException e)
        {
            //
            if (list == null || list.size() == 0)
            {
                Toast.makeText(context, "Erro, não foi possível carregar as informações", Toast.LENGTH_SHORT).show();
                onBackPressed();
            }

            //
            else
            {

                if (e != null)
                {
                    //
                    Toast.makeText(context, "Erro: " + e.getMessage().toString(), Toast.LENGTH_SHORT).show();
                }
                //

                else
                {
                    //
                    for (final Lojas loja : list)
                    {
                        //
                        lAux = new Lojas();

                        //
                        lAux.setNome(loja.getNome());
                        lAux.setDistancia(calculoDistancia(userLatitude, userLongitude, loja.getLatitude(), loja.getLongitude()));
                        lAux.setHorarioFuncionamento(loja.getHorarioFuncionamento());
                        lAux.setTelefone(loja.getTelefone());
                        lAux.setLinkLoja(loja.getLinkLoja());
                        lAux.setNomeRua(loja.getNomeRua());
                        lAux.setObjectId(loja.getObjectId());


                        // ----------
                        ParseQuery<ParseObject> fotoQuery = new ParseQuery<ParseObject>("Lojas");

                        fotoQuery.getInBackground(lAux.getObjectId(), new GetCallback<ParseObject>()
                        {
                            @Override
                            public void done(ParseObject object, ParseException e)
                            {
                                //
                                ParseFile imagem = (ParseFile) object.get("foto");

                                //
                                imagem.getDataInBackground(new GetDataCallback()
                                {
                                    @Override
                                    public void done(byte[] bytes, ParseException e)
                                    {
                                        //
                                        if(e != null)
                                        {
                                            Toast.makeText(context, "Não há imagem na lista", Toast.LENGTH_SHORT).show();
                                        }

                                        //
                                        else
                                        {
                                            for (int i = 0; i <= 100; i++)
                                            {
                                                Bitmap bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
                                                lAux.setFile(bitmap);
                                            }
                                        }

                                    }
                                });

                            }
                        });


                        //
                        lojas.add(lAux);

                        //
                        adapter = new ParseAdapter(context, R.layout.celula_adapter, lojas);

                        //
                        list_lojas.setAdapter(adapter);

                        //
                        progressDialog.dismiss();
                    }
                }
            }
        }
    });
}
No answers

Browser other questions tagged

You are not signed in. Login or sign up in order to post.