たとえば、次のようなカスタム ビューを作成する場合:
class FrameLayoutNormal: FrameLayout{
constructor(context: Context) : this(context, null)
constructor(context: Context, attrs: AttributeSet?) : this(context, attrs, 0)
constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) {
textView{
lparams(...)
}
}
コンパイラは親が誰であるかを知らないため、lparams を定義することはできません。TextView を FrameLayout 内にラップすると機能し、スキャンしてレイアウト パラメータを指定します。ただし、カスタム ビューでは、親はそれ自体です。では、拡張機能を使用できるように、子供たちにそれを認識させるにはどうすればよいでしょうか?
から拡張する以外に、それを機能させる方法はあります_FrameLayout
か?`