如何使用毕加索从URI显示图像?图像没有显示出来

时间:2017-10-22 05:44:20

标签: java android picasso

我正在尝试让应用程序使用毕加索显示已登录用户的个人资料图片,但个人资料图片未显示由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);
    };
}

2 个答案:

答案 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);