簡體   English   中英

如何使用視圖綁定在 Kotlin 中正確擴展視圖

[英]How to inflate a view properly in Kotlin with View Binding

我創建了一個自定義視圖,如下所示:

class CustomView(context: Context, attrs: AttributeSet?) : View(context, attrs) {

   val textView: TextView
   val button: Button
   
    init {
        ViewCustomBinding.inflate(LayoutInflater.from(context)).apply {
            this.textView = textView
            this.button = button
        }
    }

這適用於具有TextViewButton的自定義視圖。 但是,當它在任何布局中作為視圖膨脹時,我看不到視圖被膨脹。 我想知道這段代碼中缺少什么實際上在屏幕上放大了這個視圖?

您從未將膨脹的視圖添加到層次結構中。 您可以添加它

addView(binding.root)

或在inflate方法中將您的視圖作為父級傳遞。


編輯

我剛剛注意到您的自定義視圖繼承自View class 不能充當其他視圖的父級。 您應該使用ViewGroup的某些子類。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM