【メモ】CustomViewが入っているlayoutをinflateしたら[Method threw ‘android.view.InflateException’ exception]が出た

CustomViewのconstructorが足りないのが原因らしいので変更した

package com.github.atsumo.sample0627

class SampleCustomView constructor(
  context: Context,
  attributes: AttributeSet? = null,
  defStyleAttr: Int = 0
) : LinearLayout(context, attributes, defStyleAttr) {

}

constructorattributesdefStyleAttrも引数にとりうるすべてのパターンを網羅したはずなのにまだエラーがでてよくわからなかったんだが... @JvmOverloadsを追加したら行けた

package com.github.atsumo.sample0627

class SampleCustomView @JvmOverloads constructor(
  context: Context,
  attributes: AttributeSet? = null,
  defStyleAttr: Int = 0
) : LinearLayout(context, attributes, defStyleAttr) {

}

とりあえずメモ