如何在屏幕旋转后重置懒惰

时间:2018-03-17 19:29:57

标签: android kotlin

根据我的主题,我在我的应用程序中使用了不同的布局,所以我不能在我的用例中使用DataBinding,因为这会使我的整个代码混乱,如下所示:

fun getCVAnswer() : CardView {
    return when (ThemeManager.themeStyle()) {
        ThemeManager.Style.Modern -> return (binding as MviGameActivityModern).cvAnswer1
        ThemeManager.Style.Round -> return (binding as MviGameActivityRound).cvAnswer1
        ...
    }
}

所以我想使用另一种解决方案,我的所有样式都有相同的布局和相同的ID,所以我可以做以下所有样式:

 private val cvAnswer1 by lazy { findViewById<CardView>(R.id.cvAnswer1) }

问题

屏幕旋转后,我会泄漏活动,cvAnswer1中有错误的视图(旋转前我的活动中的视图)。任何想法如何解决这个问题?

0 个答案:

没有答案