使用Picasso设置图像ImageButton

时间:2017-07-25 02:56:53

标签: android firebase firebase-realtime-database picasso imagebutton

我需要将ImageButton的图像设置为存储在Firebase中的图像。

我目前正在此模板的EditText中查看数据:

nameCompanyDB = FirebaseDatabase.getInstance().getReference().child("Company").child(user_id).child("name_company");

mNameCompany = (EditText) findViewById(R.id.edtNameCompany);


nameCompanyDB.addListenerForSingleValueEvent(new ValueEventListener() {

            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                mNameCompany.setText(dataSnapshot.getValue(String.class));
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });

如何显示存储的图像。 我有以下银行详细信息:

fotoCompanyDB = FirebaseDatabase.getInstance().getReference().child("Company").child(user_id).child("photo");

fotoCompanyDB.addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {

        /* Set the image here */  
        /* I would like to use Picasso */              


            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });

Structure Picasso:
Class Example:
public void setImage(final Context c, final String image){

            final ImageView post_image = (ImageView) mView.findViewById(R.id.post_image);

            /*Procedimento preparado para funcionar offline*/
            Picasso.with(c).load(image).networkPolicy(NetworkPolicy.OFFLINE).into(post_image, new Callback() {
                @Override
                public void onSuccess() {

                }

                @Override
                public void onError() {

                    /*Processo para carregar e visualizar imagem - Ocorre quando estiver Online*/
                    Picasso.with(c).load(image).into(post_image);

                }
            });

        }
    }

是否可以使用此结构模板在ImageButton中显示FireBox结果?

2 个答案:

答案 0 :(得分:2)

实现这一目标的最简单方法是使用Glide,我会恳请你。为此,您可以使用以下代码:

Glide.with(post_image.getContext())
    .load(profilePhotoUrl)
    .centerCrop().transform(newCircleTransform(post_image.getContext()))
    .override(40,40)
    .into(post_image);

另外,请不要忘记在build.gradle文件的依赖项中添加这行代码。

compile 'com.github.bumptech.glide:glide:3.7.0'

希望它有所帮助。

答案 1 :(得分:1)

我找到了解决方案

__init__.py