科特林.TypeCastException:null不能强制转换为非null类型kotlin.字符串



我正在制作一个数据快照,但我得到了一个错误

val passwordFromDB = datasnapshot.child(completePhoneNumber).child("password").getValue<String>(String::class.java) as String
if (passwordFromDB.equals(userPassword)) {
et_Password.error = null
//get user data from datasnapshot
val usernameFromDB = datasnapshot.child(completePhoneNumber).child("name").getValue<String>(String::class.java) as String
val fullnameFromDB = datasnapshot.child(completePhoneNumber).child("fullname").getValue<String>(String::class.java) as String
val emailFromDB = datasnapshot.child(completePhoneNumber).child("email").getValue<String>(String::class.java) as String
val phoneFromDB = datasnapshot.child(completePhoneNumber).child("phone").getValue<String>(String::class.java) as String
//session manager
val sessionmanager =
SessionManager(this@LoginActivity) as SessionManager
// not impacted to user layout
sessionmanager.createloginSession(
usernameFromDB,
fullnameFromDB,
emailFromDB,
phoneFromDB,
passwordFromDB
)
}

错误:

2020-07-19 09:14:57.129 21850-21850/com.example.configE/AndroidRuntime:致命异常:main流程:com.example.config,PID:21850科特林。TypeCastException:null不能强制转换为非null类型kotlin。一串在com.example.configuration.login.LoginActivity$DoLogin$1.onDataChange(LoginActivity.kt:139(

我认为问题出在(代码的(第3行。et_Password.errorNon-nullable String,因此不能设置为null(正如您在代码中所做的那样(。尝试通过添加类似?的使et_Password.error成为Nullable String

var error: String? = null

最新更新