android Intent的getStringExtra()函数返回空值

0g0grzrc  于 2023-02-02  发布在  Android
关注(0)|答案(2)|浏览(270)

我有一个编辑文本,我从那里获取文本并使用putExtra()将其发送到MainActivity,但getStringExtra()返回空值。
第二项活动:-

val intent = Intent(this, MainActivity::class.java)
            if(editWordView.text.isNotEmpty()){
                val word = editWordView.text.toString()
                intent.putExtra("Word", word)
                startActivity(intent)
            }

在第一个日志中,显示为空,最后一行未执行,因为单词为空
主要活动:-

val intent = Intent()
        val word = intent.getStringExtra("Word")
        Log.d(TAG, "MainActivity: $word")
        word?.let {
            viewModel.insert(Word(word))
            Log.d(TAG, "onCreate: Inserted $word")
        }
bttbmeg0

bttbmeg01#

删除:

val intent = Intent()

您正在创建一个新的空Intent。它将不包含任何额外内容。相反,您需要从Activity中获取Intent

  • 通过用于创建活动的IntentgetIntent()
  • in onNewIntent(),用于将此活动的已运行示例带回前台的任何Intent
zphenhs4

zphenhs42#

要在第二个活动中获得价值,你也可以尝试这个,它对我来说非常有效!

val word = intent.extras?.getString("Word")

相关问题