每个使用视图绑定的绑定 class 是否都有父级 class?

Is there a parent class for every binding class using View Binding?

我正在使用 ViewBinding,我正在尝试减少创建抽象片段 class 并包含以下代码的代码:

abstract class MyFragment<T> : Fragment() {
    
    private var binding: T? = null

    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        binding = getBinding()
        return binding.root
    }
    
    abstract fun getBinding(): T
}

为了让它工作,我需要让 T 扩展一个 class 并且这个 class 需要是所有绑定 classes.

的父级

所有生成的绑定 class 都有一个共同的父级?如果是这样,那是什么?

应该是ViewBinding。代码片段应该适用于基本片段。

abstract class BaseFragment<V: ViewBinding> : Fragment(){
private var binding: V? = null

override fun onCreateView(
    inflater: LayoutInflater,
    container: ViewGroup?,
    savedInstanceState: Bundle?
): View? {
    binding = getBinding()
    return binding?.root
}

abstract fun getBinding(): V
}