即使在我的java类的成员中使用android导入,也不会被使用[关闭]。

问题描述 投票:0回答:2

我试图开发我的第一个Android应用程序,但我得到了这个错误,我试图导入TextView,然后我定义一个成员在我的classe作为TextView,但仍然不工作,并告诉我,导入不使用,如你可以看到在图片中。

enter image description here

java android
2个回答
1
投票

这是因为你没有遵循Kotlin语言语法。看来你到现在一直在使用java。

所以正确的方法是

lateint var textView: TextView

用于声明一个全局变量,该变量不是空的,并将在未来被初始化。

但如果你不确定你的观点是否会被 null 那么正确的语法是

var textView: TextView? = null

那么每当你访问nullable变量时,你应该检查它的nullable状态。幸运的是,Kotlin有一个优雅的方法来实现这一点。

textView?.someMethod()

希望能帮到你


0
投票

你在Kotlin类中使用了Java代码,这就是为什么你会得到一个错误。

在Kotlin中,你可以这样声明这个成员变量。

lateinit var mGreetingText: TextView

如果你不打算创建一个Kotlin项目,那么:创建一个Java项目,选择Java作为语言,而不是Kotlin。

你可以通过点击语言来选择Java,这时会出现一个下拉菜单。然后你选择Java,然后完成。


0
投票

把这段代码放在类外

lateinit var mTextView:TextView

这将创建一个Textview类型的变量,可以在以后初始化。

现在,在onCreate()内部的

mTextView = findViewById(...urId)
mTextView.setext(...etc etc)

lateinit var mTextView:TextView is read as "创建一个名为mTextView的TextView类型的变量,稍后将进行初始化"

© www.soinside.com 2019 - 2024. All rights reserved.