我有一个编辑文本,我从那里获取文本并使用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")
}
2条答案
按热度按时间bttbmeg01#
删除:
您正在创建一个新的空
Intent
。它将不包含任何额外内容。相反,您需要从Activity中获取Intent
:Intent
的getIntent()
onNewIntent()
,用于将此活动的已运行示例带回前台的任何Intent
zphenhs42#
要在第二个活动中获得价值,你也可以尝试这个,它对我来说非常有效!