【发布时间】:2018-11-13 03:42:57
【问题描述】:
如果我已经有了用户上传图片的 url,我如何直接从 Firebase 将图片设置为 imageView?
【问题讨论】:
-
您可以使用任何网络库。排球或改装或毕加索
-
显示代码如何显示图像?
标签: android firebase android-imageview firebase-storage
如果我已经有了用户上传图片的 url,我如何直接从 Firebase 将图片设置为 imageView?
【问题讨论】:
标签: android firebase android-imageview firebase-storage
您可以使用 Glide 或 Picasso 等图片加载库,
1st在build.gradle(Moduke:App)的dependencies下添加依赖,
dependencies {
....
implementation 'com.github.bumptech.glide:glide:4.8.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
}
然后在您的图像视图从 url 加载图像的活动:
Glide.with(this).load(IMAGE_URL).into(imageView);
IMAGE_URL 是图像的 Firebase 存储 url,imageView 是显示图像的位置。
【讨论】:
如果您在客户端有可用的图像 URL。实施 GLIDE 并将 URL 和 ImageView 传递给 Glide。它将负责向客户显示图像。
ImageView imageView = findViewById(R.id.imageView_ID);
RequestOptions requestOption = new RequestOptions()
.placeholder(R.drawable.placeholder)
.error(R.drawable.ic_error_1)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.priority(Priority.HIGH)
.dontAnimate()
.dontTransform()
new Glide
.with(mcontext)
.load("https://placeholder.com/img/products/imageurl.png")
.apply(requestOption)
.thumbnail(0.1f)
.into(imageView)
添加依赖 实施 'com.github.bumptech.glide:glide:4.8.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
【讨论】:
private CircleImageView uDisplayImage;
currentFirebaseUser = FirebaseAuth.getInstance().getCurrentUser();
FirebaseDatabase firebaseDatabase = FirebaseDatabase.getInstance();
String uId = currentFirebaseUser.getUid();
myRef = firebaseDatabase.getReference("user").child(uId);
myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
image = dataSnapshot.child("image").getValue().toString();
if (!image.equals("default")) {
Picasso.get().load(image).placeholder(R.drawable.idofcircularview).into(uDisplayImage);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Toast.makeText(SattingsActivity.this, "Sorry Data is not found", Toast.LENGTH_SHORT).show();
}
});
implementation 'de.hdodenhof:circleimageview:2.2.0'
implementation 'com.squareup.picasso:picasso:2.71828'
【讨论】: