[英]passing data from an activity to another and getting an error when passing and EditText
I'm trying to pass a string in an EditText from LoginActivity to TwoActovity and this is the code: 我正在尝试将EditText中的字符串从LoginActivity传递给TwoActovity,这是代码:
LoginActivity (when a button is clicked) LoginActivity(单击按钮时)
var userName: String = editText.toString()
val i = Intent(this@LoginActivity, TwoActivity::class.java)
i.putExtra("userNamePass", userName)
startActivity(i)
}
TwoActivity 两次活动
class TwoActivity : AppCompatActivity() {
lateinit var userNamePassed: String
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_two)
var int:Intent = intent
userNamePassed = int.getStringExtra("userNamePass")
textView10.text = userNamePassed
}
}
this is the error message I get after entering a name in LoginActivity and clicking the button (it goes to TwoActivity but shows this message insted of the name I actually typed in LoginAvtivity): enter image description here 这是我在LoginActivity中输入名称并单击按钮后收到的错误消息(转到TwoActivity,但显示此消息是我在LoginAvtivity中实际键入的名称): 在此处输入图像描述
in the LoginActivity if I passed "any string in double quotation" instead if userName like the following code it works 在LoginActivity中,如果我传递了“双引号中的任何字符串”,而不是如果userName像下面的代码一样工作
//var userName: String = editText.toString()
val i = Intent(this@LoginActivity, TwoActivity::class.java)
i.putExtra("userNamePass", "anything")
startActivity(i)
}
First of all, you're not getting an error, it's just string value of your EditText
because you said editText.toString()
. 首先,您不会出错,只是您的
EditText
字符串值,因为您说过editText.toString()
。
What you really want is editText.text.toString()
. 您真正想要的是
editText.text.toString()
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.