Dmitry Kandalov
02/14/2017, 12:30 PMlateinit is probably what I wanted.
Using constructor parameters is not an option, assume that lifecycle is imposed by a framework which you cannot change.
The only problem I found is that lateinit doesn’t allow nullable fields. This makes sense but inconvenient for lifecycle methods like this one override fun disposeUIResources() { settingsForm = null }