пакет равен нулю после установки в действие намерения

#android #nullpointerexception #bundle

Вопрос:

Я устанавливаю намерение перемещаться между действиями. Но здесь пакет равен нулю после установки намерения. Вот мой код,

 NewCourseActivity.java  AdapterView.OnItemSelectedListener mItemSelectedListener = new AdapterView.OnItemSelectedListener() {   @Override  public void onItemSelected(AdapterViewlt;?gt; parent, View view, int position, long id) {  CourseSelected=parent.getSelectedItem().toString();  switch (view.getId()) {  case R.id.BESPINNER:  String becourse=parent.getSelectedItem().toString();  Intent intent = new Intent(NewCourseActivity.this,BEViewCourseActivity.class);  Bundle data1 = new Bundle();  data1.putString("course",becourse);  intent.putExtras(data1);  startActivity(intent);  break; } }  BEViewCourseActivity.java:  CourseSelected=findViewById(R.id.courseSelected);    Intent intent = getIntent();  Bundle data = intent.getExtras();  if(data != null){  String selectedcourse = data.getString("course");  CourseSelected.setText(selectedcourse);  }  else{  CourseSelected.setText("Failed");  }  

Ответ №1:

Для передачи данных от одного вида деятельности к другому:

 // updated becourse String String becourse = parent.getItemAtPosition(position).toString(); Intent intent = new Intent(NewCourseActivity.this , BEViewCourseActivity.class); intent.putExtra ( "course" , becourse ); startActivity ( intent );  

Затем получите переданные данные:

 Bundle extras = getIntent().getExtras(); if (extras != null) {  String stringValue = extras.getString("course"); // string must be the same as the passed one }  

Комментарии:

1. но никакие данные не проходят через пакет, и дополнительные функции пакета в действиях получения имеют нулевое значение

2. Добавьте журнал перед началом действия , чтобы проверить значение строки: Log.i( «Моя активность», конечно );

3. Что такое «курс» в точности? Что он должен вернуть?

4. он возвращает данные в spinner, которые затем переходят к получающему действию