Anko で Custom View を作る方法です.
端的にいうと,AnkoContext.createDelegate
を使います.
Anko のバージョンは 0.10.1 です.
サンプルコード
UI側
class SampleUI : AnkoComponent<SampleView> {
companion object {
val textId = View.generateViewId()
}
override fun createView(ui: AnkoContext<SampleView>): View = with(ui) {
verticalView {
textView {
id = textViewId
}
}
}
}
View 側
class SampleView(context : Context) : LinearLayout(context) {
val textView : TextView
init {
val view = SampleUI.createView(AnkoContext.createDelegate(context))
textView = view.find(SampleUI.textId)
}
}
View を作りさえしたら,あとはいつもの Android と同じです.
メジャーリリースがくるころには,ドキュメントが整備されてこのあたりもわかりやすくなるのでしょう.