Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android studio codelabs中的findViewById()未解析引用_Android Studio_Kotlin_Findviewbyid - Fatal编程技术网

Android studio codelabs中的findViewById()未解析引用

Android studio codelabs中的findViewById()未解析引用,android-studio,kotlin,findviewbyid,Android Studio,Kotlin,Findviewbyid,大家好! 今天我在为科特林做谷歌代码实验室。我试图在函数中使用findViewById(),但它显示为未解析的引用。我打赌这是一个相当容易的问题,但我想不出来。这是我的密码 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.

大家好! 今天我在为科特林做谷歌代码实验室。我试图在函数中使用findViewById(),但它显示为未解析的引用。我打赌这是一个相当容易的问题,但我想不出来。这是我的密码

class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    findViewById<Button>(R.id.done_button).setOnClickListener { addNickname(it) }
}
}

private fun addNickname(view: View) {
val editText = findViewById<EditText>(R.id.nickname_edit)
val nicknameTextView = findViewById<TextView>(R.id.nickname_text)
nicknameTextView.text = editText.text
nicknameTextView.visibility = View.VISIBLE
editText.visibility = View.GONE
view.visibility = View.GONE
}
class MainActivity:AppCompatActivity(){
重写创建时的乐趣(savedInstanceState:Bundle?){
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
findViewById(R.id.done_按钮).setOnClickListener{add昵称(it)}
}
}
私人娱乐添加昵称(视图:视图){
val editText=findViewById(R.id.昵称_edit)
val昵称文本视图=findViewById(R.id.昵称_文本)
昵称textview.text=editText.text
昵称textView.visibility=View.VISIBLE
editText.visibility=View.GONE
view.visibility=view.GONE
}
当我尝试将editText和nickmaneTextView VAL分配给视图时,我使用findViewById(),但它显示为未解析。 这很基本,所以我不知道问题出在哪里

我将非常感谢你的帮助

编辑: 如果我使用

val editText=view.findViewById(R.id.昵称_edit)
val昵称文本视图=view.findViewById(R.id.nickname\u text)

我收到一个错误,说昵称TextView为null,它崩溃了

您应该添加
视图

val editText = view.findViewById<EditText>(R.id.nickname_edit)
val nicknameTextView = view.findViewById<TextView>(R.id.nickname_text)
val editText=view.findViewById(R.id.昵称_edit)
val昵称文本视图=view.findViewById(R.id.nickname\u text)

好吧,我想起来了,必须在

class MainActivity: AppCompatActivity() {
  override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  setContentView(R.layout.activity_main)
  }
'here'
}
我知道这是个愚蠢的问题:(


谢谢你的帮助

是的,我试过了,但是它抛出了一个错误,说昵称TextView为Null。你编辑了什么?哦,糟糕,现在它已编辑并更新。在按id查找视图之前,我包含了一个“视图”
class MainActivity: AppCompatActivity() {
  override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  setContentView(R.layout.activity_main)
  }
'here'
}