【发布时间】:2019-12-30 05:15:24
【问题描述】:
我正在尝试运行 我收到错误的开源应用程序
lateinit property textInput has not been initialized
使用textInput的主要代码
class MainActivity : BaseActivity() {
private val drawerToggle by lazy { ActionBarDrawerToggle(this, drawer_layout, drawer_open, drawer_close) }
private val survivalContent by lazy { SurvivalContent(assets) }
private lateinit var currentUrl: String
private lateinit var currentTopicName: String
private lateinit var textInput: MutableList<String>
private var lastFontSize = State.getFontSize()
private var lastNightMode = State.nightModeString()
private var lastAllowSelect = State.allowSelect()
private val linearLayoutManager by lazy { LinearLayoutManager(this) }
private var isInEditMode by observable(false, onChange = { _, _, newMode ->
if (newMode) {
fab.setImageResource(drawable.ic_image_remove_red_eye)
contentRecycler.adapter = EditingRecyclerAdapter(textInput)
} else {
fab.setImageResource(drawable.ic_editor_mode_edit)
contentRecycler.adapter = MarkdownRecyclerAdapter(textInput, imageWidth(), onURLClick)
}
contentRecycler.scrollToPosition(State.lastScrollPos)
})
由于我是 android 开发的新手,所以我不知道如何在使用它之前初始化 lateinit 变量。在此之前,我尝试执行 git submodule update,正如 github 中提到的那样,但它没有用。所以现在我希望问题在于初始化 textInput 变量。
【问题讨论】:
-
在使用
textInput之前,您需要执行textInput = mutableListOf("Abc", "Xyz")之类的操作 -
太好了,已经添加了相同的答案