【问题标题】:How can I change ProfilePictureView to circle image. Drawable is not working如何将 ProfilePictureView 更改为圆形图像。可绘制不工作
【发布时间】:2018-08-08 17:24:44
【问题描述】:

我已尝试将 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);

【问题讨论】:

    标签: facebook drawable android-drawable profile-picture


    【解决方案1】:

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

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

    在 XML 中,这意味着改变:

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

    到:

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

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

    profilePictureView = view.findViewById(R.id.profilePicture);
    profilePictureView.setProfileId(userId);
    

    【讨论】:

      猜你喜欢
      • 2016-07-25
      • 2014-06-14
      • 1970-01-01
      • 1970-01-01
      • 2014-04-09
      • 1970-01-01
      • 2020-05-16
      • 2017-08-17
      • 1970-01-01
      相关资源
      最近更新 更多