0

我试图将 ProfilePictureView 更改为可绘制的圆形图像。但它不起作用。

这是我的 ProfilePictureView 的 xml

     <com.facebook.login.widget.ProfilePictureView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/profilePicture" />

这是我的可绘制文件 circle.xml

    <?xml version="1.0" encoding="utf-8"?>

<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval">

    <solid
        android:color="#666666"/>

    <size
        android:width="120dp"
        android:height="120dp"/>
</shape>

这是功能

        profilePictureView = view.findViewById(R.id.profilePicture);
        profilePictureView.setProfileId(userId);
        profilePictureView.setBackgroundResource(R.drawable.circle);
4

1 回答 1

0

看看这个答案。它们提供了一个编辑ProfilePictureView类,您可以使用它对与配置文件 ID 关联的图像应用舍入效果。

我觉得在上面的答案中遗漏了一些东西,您需要更改 JavaXML 中的命名空间声明以指向新文件的位置。

在 XML 中,这意味着改变:

<com.facebook.login.widget.ProfilePictureView
    ...
/>

至:

<com.myapp.mypackage.view.ProfilePictureView
    ...
/>

在 Java 中更改导入语句后,您所要做的就是提供配置文件 ID。

profilePictureView = view.findViewById(R.id.profilePicture);
profilePictureView.setProfileId(userId);
于 2018-02-28T18:57:31.547 回答