SignupActivity.kt
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.widget.EditText
import android.widget.Toast
import kotlinx.android.synthetic.main.activity_signup.*
class SignupActivity:AppCompatActivity(){
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_signup)
val signname =findViewById<EditText>(R.id.signNameTxt)
val s=signname!!.text.toString()
fun validate(){
if(s.isNotEmpty()){
Toast.makeText(this,"Working :)",Toast.LENGTH_SHORT).show()
}
else{
Toast.makeText(this,"Not Working :(",Toast.LENGTH_SHORT).show()
}
}
signNxtBtn.setOnClickListener{
validate()
}
}
public override fun onDestroy() {
super.onDestroy()
}
}
这是用于注册活动的简单代码,用于验证该字段是否为空以供进一步处理
if(s.isNotEmpty()){
Toast.makeText(this,"Working :)",Toast.LENGTH_SHORT).show()
}
else{
Toast.makeText(this,"Not Working :(",Toast.LENGTH_SHORT).show()
}
在代码的这一部分中,无论我是否在文本字段内输入任何值,应用程序都将返回else部分。
答案 0 :(得分:3)
您太早阅读了edittext值。移动
val s=signname!!.text.toString()
在您的validate()
函数内部。
答案 1 :(得分:0)
**
像这样使用您的代码。
**
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val s = tvDisplay.text.toString()
btnOk.setOnClickListener {
validate(s)
}
}
private fun validate(s:String) {
if(s.isNotEmpty()){
Toast.makeText(this,"Working :)",Toast.LENGTH_SHORT).show()
}
else{
Toast.makeText(this,"Not Working :(",Toast.LENGTH_SHORT).show()
}
} }