为什么在将Bundle传递给新活动时会获得NPE?

Uwa*_*bal 0 android android-layout

在我的第一个Activity中,我将东西放入Bundle然后触发Intent:

b = new Bundle();
b.putString(Constants.KEY_CLASS, classSelected);
Intent i = new Intent(this, AssessmentMarksActivity.class);
i.putExtras(b);
startActivity(i);
Run Code Online (Sandbox Code Playgroud)

在下一个Activity中,我只是得到了我需要的东西:

tvClass = (TextView) findViewById(R.id.tvAssessmentClass);
b = getIntent().getExtras();
classSelected = b.getString(Constants.KEY_CLASS);
tvClass.setText(classSelected);
Run Code Online (Sandbox Code Playgroud)

当我尝试设置TextView的文本时,我得到了一个N​​PE.

这是文本视图的XML:

<TextView
android:id="@+id/tvAssessmentMarksClass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:text="Class"
android:textSize="20dp" />
Run Code Online (Sandbox Code Playgroud)

jcx*_*ier 5

tvClass = (TextView) findViewById(R.id.tvAssessmentClass);
Run Code Online (Sandbox Code Playgroud)

似乎ids不一样,从而导致你的NPE.

<TextView
    android:id="@+id/tvAssessmentMarksClass"
    ...
Run Code Online (Sandbox Code Playgroud)