我正在构建一个简单的应用程序,我正在尝试显示刚刚登录的用户的“名称”和“电子邮件”地址。 我从Intent Extra获得了价值。 当我在控制台中记录intent extras时,它会显示。但是,它只在我登录时才有效。 当我尝试将其指定为设置文本视图的文本时,它会引发以下错误。
java.lang.IllegalStateException:faculty_nav_header_name不能为空。
以下是代码: 这是我尝试访问对象外的成员变量的地方。
fun setupUI(){
faculty_home_dateStamp.text = getDate_of_month()
faculty_home_dayStamp.text = getDay_of_week()
val previousIntentValueName = intent.getCharSequenceExtra(LOGIN_TO_FACULTY_INTENT_USER_NAME)
val previousIntentValueEmail = intent.getCharSequenceExtra(LOGIN_TO_FACULTY_INTENT_USER_EMAIL)
println(TAG + "name : " + previousIntentValueName + ", Email : "+ previousIntentValueEmail )
faculty_nav_header_name.text = previousIntentValueName
faculty_nav_header_email.text = previousIntentValueEmail
}
这是我的nav_header代码段:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/Linear_layout"
android:layout_width="match_parent"
android:layout_height="@dimen/nav_header_height"
android:background="@color/sicsrYellow"
android:gravity="bottom"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
<TextView
android:id="@+id/faculty_nav_header_name"
android:layout_width="199dp"
android:layout_height="42dp"
android:layout_marginEnd="8dp"
android:layout_marginStart="16dp"
android:layout_marginTop="32dp"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textSize="22sp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:text=" "
tools:text="Farhana Desai" />
<TextView
android:id="@+id/faculty_nav_header_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="16dp"
android:textSize="18sp"
android:text=" "
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/faculty_nav_header_name"
tools:text="farhana.desai@sicsr.ac.in" />
<ImageButton
android:id="@+id/faculty_nav_header_setting"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginBottom="8dp"
android:layout_marginEnd="8dp"
android:layout_marginTop="8dp"
android:background="@color/sicsrYellow"
android:onClick="nav_header_setting_clicked"
android:scaleType="centerCrop"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/faculty_nav_header_email"
app:srcCompat="@drawable/ic_001_settings"
android:contentDescription="@string/nav_header_setting_image_button" />
<Button
android:id="@+id/faculty_nav_header_logout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:background="@color/sicsrYellow"
android:onClick="nav_header_logout_clicked"
android:text="@string/logout"
android:textSize="16sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/faculty_nav_header_email" />
</android.support.constraint.ConstraintLayout>
我不确定我哪里出错了。请看一下,看看你是否找到任何可以完成这项工作的东西。 注意:我正在使用这个导航标题来表示我的所有活动,这可能导致这不起作用吗?