当我尝试从edittext获取数据时得到空数据,这是我的代码
class LoginActivity : AppCompatActivity() {
lateinit var etUsername : EditText
lateinit var etPassword : EditText
var username = ""
var password = ""
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_login)
etPassword = findViewById(R.id.tanggalLahir) as EditText
etUsername = findViewById(R.id.nomerInduk) as EditText
username = etUsername.text.toString()
password = etPassword.text.toString()
buttonLogin.setOnClickListener() {
if (username.isEmpty()){
Log.d("User", "Username = $username")
nomerInduk.error = "Nomor Induk Kosong!"
return@setOnClickListener
}
if (password.isEmpty()){
Log.d("User", "Password = $password")
tanggalLahir.error = "Tanggal Lahir Kosong!"
return@setOnClickListener
}
login(username,password)
}
}当我签入log image check log的时候
我已经将edittext更改为textinputedittext,但仍然相同
发布于 2020-06-10 18:40:48
class LoginActivity : AppCompatActivity() {
lateinit var etUsername : EditText
lateinit var etPassword : EditText
var username = ""
var password = ""
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_login)
etPassword = findViewById(R.id.tanggalLahir) as EditText
etUsername = findViewById(R.id.nomerInduk) as EditText
buttonLogin.setOnClickListener() {
username = etUsername.text.toString()
password = etPassword.text.toString()
if (username.isEmpty()){
Log.d("User", "Username = $username")
nomerInduk.error = "Nomor Induk Kosong!"
return@setOnClickListener
}
if (password.isEmpty()){
Log.d("User", "Password = $password")
tanggalLahir.error = "Tanggal Lahir Kosong!"
return@setOnClickListener
}
login(username,password)
}
}发布于 2020-06-10 18:47:16
class LoginActivity : AppCompatActivity() {
lateinit var etUsername : EditText
lateinit var etPassword : EditText
var username = ""
var password = ""
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_login)
etPassword = findViewById(R.id.tanggalLahir) as EditText
etUsername = findViewById(R.id.nomerInduk) as EditText
buttonLogin.setOnClickListener() {
// once button click you have to get the current text value from the edit text what you have entered.
username = etUsername.text.toString()
password = etPassword.text.toString()
if (username.isEmpty()){
Log.d("User", "Username = $username")
nomerInduk.error = "Nomor Induk Kosong!"
return@setOnClickListener
}
if (password.isEmpty()){
Log.d("User", "Password = $password")
tanggalLahir.error = "Tanggal Lahir Kosong!"
return@setOnClickListener
}
login(username,password)
}
}你必须学习android的基本生命周期。在这里,您第一次获得了编辑文本值,并将其分配给全局变量username和password。但是在您输入了一些内容并单击enter之后,您必须在单击submit按钮时获得新添加的文本值。这就是为什么那些赋值代码会进入到按钮点击的内部。
https://stackoverflow.com/questions/62301446
复制相似问题