intent.getStringExtra() returns 空
intent.getStringExtra() returns null
我正在尝试将数据 class 对象发送到另一个 activity 对象,但它返回了空值,所以我尝试发送简单的字符串,但它仍然是 returns 空值,我找不到问题是什么。这是我的代码
LoginScreen.kt
中的代码
val intentUser = Intent(this@LoginScreen,HomeActivity::class.java)
val string = "intent"
intentUser.putExtra("intent",string)
startActivity(intentUser)
finish()
并在我的 HomeActivity 中编写代码
val intentUser = Intent()
var string = intentUser.getStringExtra("intent")
Log.e("Intent: ",string.toString())
结果
2022-02-23 14:25:09.139 11365-11365/com.scibilisim.d_forceandroid E/Intent:: null
在 HomeActivity
中,您正在将意图初始化为
intent = Intent()
这实际上是用一个新的 Intent 对象来初始化 Intent。那不是期望的行为,要实现期望的行为,请使用 getIntent()
而不是 Intent()
。
请在您的 LoginScreen.kt
:
中试试这个
val intentUser = Intent(this@LoginScreen,HomeActivity::class.java)
val string = "intent"
intentUser.putString("intent",string)
startActivity(intentUser)
this.finish()
在你的 HomeActivity
:
val string = intent!!.getStringExtra("intent")
错误是您正在实例化一个新的 Intent 对象。
我正在尝试将数据 class 对象发送到另一个 activity 对象,但它返回了空值,所以我尝试发送简单的字符串,但它仍然是 returns 空值,我找不到问题是什么。这是我的代码
LoginScreen.kt
中的代码val intentUser = Intent(this@LoginScreen,HomeActivity::class.java)
val string = "intent"
intentUser.putExtra("intent",string)
startActivity(intentUser)
finish()
并在我的 HomeActivity 中编写代码
val intentUser = Intent()
var string = intentUser.getStringExtra("intent")
Log.e("Intent: ",string.toString())
结果
2022-02-23 14:25:09.139 11365-11365/com.scibilisim.d_forceandroid E/Intent:: null
在 HomeActivity
中,您正在将意图初始化为
intent = Intent()
这实际上是用一个新的 Intent 对象来初始化 Intent。那不是期望的行为,要实现期望的行为,请使用 getIntent()
而不是 Intent()
。
请在您的 LoginScreen.kt
:
val intentUser = Intent(this@LoginScreen,HomeActivity::class.java)
val string = "intent"
intentUser.putString("intent",string)
startActivity(intentUser)
this.finish()
在你的 HomeActivity
:
val string = intent!!.getStringExtra("intent")
错误是您正在实例化一个新的 Intent 对象。