首页 > 解决方案 > 如何扩展 AppCompatButton 并使用我们自己的自定义布局对其进行充气?

问题描述

有可能这样做吗?我有以下代码:

class MyButton : AppCompatButton {
    @JvmOverloads
    constructor(
        context: Context,
        attrs: AttributeSet? = null,
    defStyleAttr: Int = 0)
    : super(context, attrs, defStyleAttr) {
        inflateView(attrs)
    }

    @TargetApi(Build.VERSION_CODES.LOLLIPOP)
    constructor(
        context: Context,
        attrs: AttributeSet?,
    defStyleAttr: Int,
    defStyleRes: Int)
    : super(context, attrs, defStyleAttr, defStyleRes) {
        inflateView(attrs)
    }

    fun inflateView(attrs: AttributeSet?) {
        LayoutInflater.from(context).inflate(R.layout.my_button, this, true)
    }
}

膨胀函数给了我这个错误:

在此处输入图像描述

我知道 AppCompatButton 不是从 ViewGroup 继承的,但是正确的功能是什么?

标签: kotlin

解决方案


推荐阅读