2015-06-29 2 views
4

Я отправляю Arraylist один вид деятельности другому, но 2-го действия показывают нулевой указатель и нулевой адаптер. как это исправить ??? Благодарю.ArrayList (XmlValueModel) переместить из одной активности в другую. Действие

Первая активность:

 Bundle b = new Bundle(); 
     b.putSerializable("array_list", listdata); 
     Intent movedata = new Intent(getApplicationContext(),Shopping.class); 
     movedata.putExtras(movedata); 
     startActivity(movedata); 

Вторая активность:

Intent intent = this.getIntent(); 
     Bundle bundle = intent.getExtras(); 

     ArrayList<XmlValueModel> listdata = (ArrayList<XmlValueModel>) bundle.getSerializable("array_list"); 

    //  ArrayAdapter<XmlValueModel> array = new ArrayAdapter<XmlValueModel>(getApplicationContext(), android.R.layout.simple_list_item_1, list); 

     listview = (ListView) findViewById(R.id.ListOne); 
     adapter = new CustomListAdapter(this, listdata); 
     listview.setAdapter(adapter); 
    }catch (Exception e){ 
     Log.e("Error:", e.getMessage()); 
    } 

ответ

0

Ваш XmlValueModel serialisable? Вы должны реализовать XmlValueModel с Serializable!

public class XmlValueModel implements Serializable {...} 

В случае XmlValueModel приходит из библиотеки получить новый класс из XmlValueModel и реализации Serializable.

+0

Дорогой ... Я использовал этот код, но я не меняется .. –

+0

Ваш список ненулевым, прежде чем положить его в расслоении ? –

0

попробовать этот способ может это поможет вам

Сначала вы хотите сделать

Класс XmlValueModel реализует Serializable

public class XmlValueModel implements Serializable { 
/** 
* 
*/ 
private static final long serialVersionUID = 1L; 

} 

В вашем FirstActivity сделать так

ArrayList<XmlValueModel> XmlValueModelArrayList = new ArrayList<XmlValueModel>(); 

Intent intent = new Intent(this,secondActivity.class); 
intent.putExtra("XmlValueModelArrayList", XmlValueModelArrayList); 

В вашем SecondActivity сделать так

ArrayList<XmlValueModel> XmlValueModelList; 

XmlValueModelList = (ArrayList<XmlValueModel>) getIntent().getSerializableExtra(
      "XmlValueModelArrayList"); 
+0

no change ... :( –

+0

Unchecked cast: 'java.io.Serializable' to 'java.util.ArrayList ...... Какой тип предупреждения ....? –

+0

согласно моему коду ArrayList XmlValueModelList; –