gpt4 book ai didi

java - IllegalStateException textview 在 Kotlin 中不能为 null

转载 作者:行者123 更新时间:2023-12-01 06:22:16 25 4
gpt4 key购买 nike

我正在尝试创建一种在 Activity 启动时通过在抽屉导航中设置 TextView 的文本来更新 UI 的方法。我一直收到 TextView 不能为空的错误?

我得到的错误是非法状态异常 userEmail 不能为空

这是应该更新抽屉导航中的个人资料信息的 updateUI

private fun updateUI(user:FirebaseUser?) {
if (user != null) {
val userEmailText = findViewById<TextView>(R.id.userEmail)
userEmail.text = user.email
val errorTriage : String? = user.email
println("User Email is ="+errorTriage)
} else {
val userEmailText: TextView = findViewById(R.id.userEmail)

userEmailText.text = "Johndoe@someemail.com"
userNameText.text = "John Doe"

}}

如果用户已登录,则这是对 UpdateUI 的调用,如果是的话,请更新抽屉导航中的配置文件数据,这就是问题所在。如果没有,它将启动 FirebaseUI 登录 Activity 。

override fun onStart() {
super.onStart()
//Checks to see if user is already signed in
if (mAuth.currentUser != null) {
updateUI(mAuth.currentUser)
} else {
//user is not signed in
startActivityForResult(
AuthUI.getInstance().createSignInIntentBuilder().build(),
RC_SIGN_IN)
}}

这是布局

 <ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="@dimen/nav_header_vertical_spacing"
app:srcCompat="@mipmap/ic_launcher_round" />

<TextView
android:id="@+id/userName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:text="Android Studio"
android:textAppearance="@style/TextAppearance.AppCompat.Body1" />
<TextView
android:id="@+id/userEmail"
android:layout_width="wrap_content"

最佳答案

抱歉,我整晚都在研究这个问题,并发布了令人生气的代码,哈哈。我将代码更新为问题所在。另外,我刚刚意识到我将值命名为 userEmailText 并尝试设置

userEmail.text = user.email

而不是

userEmailText.text = user.email

这可以解释为什么当我执行 println 时它会正确显示 log cat

关于java - IllegalStateException textview 在 Kotlin 中不能为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47610818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com