我正在尝试让应用程序使用毕加索显示已登录用户的个人资料图片,但个人资料图片未显示由profile.getPhotoUrl()
方法生成的uri,但是当我尝试使用该网址显示未显示的图像
我做了一些研究,发现它没有出现的原因是因为它是一个contentProvider uri
如何才能显示个人资料图片?
Here就是简介的原样:
if (user != null) {
for (UserInfo profile : user.getProviderData()) {
// Id of the provider (ex: google.com)
String providerId = profile.getProviderId();
// this displays the email for some reason
String uid = profile.getUid();
//displays the name
String name = profile.getDisplayName();
//doesnt even display the email for some reason
String email = profile.getEmail();
//profile pic uri
Uri photoUrl = profile.getPhotoUrl();
displayUser.setText(uid);
displayName.setText(name);
displayPhotoUrl.setText(photoUrl.toString());
Picasso.with(getApplicationContext())
.load(photoUrl)
.into(pic);
};
}
答案 0 :(得分:0)
Picasso.with(getActivity()).load(uri).into(imageView);
OR
File f = new File(uri);
Picasso.with(getActivity()).load(f).into(imageView);
答案 1 :(得分:0)
从Uri获取路径并使用该文件创建一个文件Object。
File file=new File(uri.getPath());
Picasso.with(getActivity()).load(file).into(imageView);