android - Intent.getStringExtra() 在 Kotlin Android 中返回 null
问题描述
我不知道我在做什么错误,为什么它返回 null,我看到其他人的问题我没有得到我真正需要的东西。我在这个活动中发送字符串数据
val inspenctionIntent = Intent(this, InspectActivity::class.java)
inspenctionIntent.putExtra("Particulars", estimateItem.Particulars)
inspenctionIntent.putExtra("SSRItemNO", estimateItem.SSRItemNO)
inspenctionIntent.putExtra("Quantity", estimateItem.Quantity)
inspenctionIntent.putExtra("QuantityUnit", estimateItem.QuantityUnit)
inspenctionIntent.putExtra("Times", estimateItem.Times)
inspenctionIntent.putExtra("Rates", estimateItem.Rates)
inspenctionIntent.putExtra("RatesPer", estimateItem.RatesPer)
inspenctionIntent.putExtra("Total", estimateItem.Total)
startActivity(Intent(this@CheckMeasurementActivity, InspectActivity::class.java))
并试图在另一个活动中额外获取该字符串但返回 null?
val Particulars = intent.getStringExtra("Particulars")
val SSRItemNO = intent.getStringExtra("SSRItemNO")
val Quantity = intent.getStringExtra("Quantity")
val QuantityUnit = intent.getStringExtra("QuantityUnit")
val Times = intent.getStringExtra("Times")
val Rates = intent.getStringExtra("Rates")
val RatesPer = intent.getStringExtra("RatesPer")
val Total = intent.getStringExtra("Total")
我尝试通过替换 var 也仍然返回 null?
解决方案
你的错误是这一行。
startActivity(Intent(this@CheckMeasurementActivity, InspectActivity::class.java))
您声明inspenctionIntent
但从不使用它,因此其他活动将一无所获,因为您的意图不会向它发送任何内容。
所以你需要改变
startActivity(Intent(this@CheckMeasurementActivity, InspectActivity::class.java))
至
startActivity(inspenctionIntent)
推荐阅读
- android - 清洁架构中具有多个响应列表的用例
- typescript - 测试涉及打开文件夹/工作区的 VSCode 扩展
- bootstrap-4 - 屏幕分辨率小于 576px 的 boostrap-grid 中的 react-slick
- azure - 找不到如何加载包含 Get-MsolUser 的库
- c - 如何为此方法格式化字符串?
- javascript - 对象数组中特定对象的修剪属性
- reactjs - 如何在 React 应用程序中将 JWPlayer 或 Plyr.io 用于视频播放器?
- xamarin - ExtraScanOverlayLayoutId CardIOActivity 选项中可以接受哪些值?
- angular - 当测试成功完成后没有当前规范时使用“期望”
- javascript - Chatkit API 错误:需要身份验证