Android customView(扩展 AppCompatImageView)app:srcCompat 不显示图像

Android customView(extends AppCompatImageView) app:srcCompat not showing image

我制作的自定义视图只是扩展了 AppCompatImageView

class BadgeImageView: AppCompatImageView {
    constructor(context: Context) : super(context) {

    }
    constructor(context: Context, attrs:AttributeSet?):super(context, attrs){

    }
    constructor(context: Context, attrs:AttributeSet?, defStyleAttr:Int):super(context, attrs,defStyleAttr){

    }
}

当我像这样使用 AppCompatImageView 时..

<androidx.appcompat.widget.AppCompatImageView
        android:layout_width="0dp"
        android:layout_height="0dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@drawable/ic_button_star" />

AppCompatImageView Result

当我像这样使用 BadgeImageView 时..

  <com.my.proj.common.view.BadgeImageView
        android:layout_width="0dp"
        android:layout_height="0dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@drawable/ic_button_star" />

BadgeImageView Result

如您所见,我只是使用了自定义视图而不是它,但它根本没有加载图像。

为什么?

尝试使用它。希望工作顺利

class BadgeImageView @JvmOverloads constructor(
            context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0
    ) : AppCompatImageView(context, attrs, defStyleAttr) { 


    }

Xml 此处为代码片段。

<ui.components.BadgeImageView
            app:srcCompat="@drawable/ic_reported_image"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
                 app:layout_constraintBottom_toTopOf="@id/reportedTitle"
            android:layout_width="0dp"
            android:layout_height="60dp"/>

这里是截图


here is screenshot