2014-11-03 36 views
-1

我知道有2種方法可以做到這一點,Parcelable和Serializable。另一種方法(壞的)是靜態變量。Android傳遞ArrayList <Object> Intent

該列表中的條目可以是A類或B類

我試圖通過使用Parcelable和序列化沒有成功列表的情況下,由於類對象沒有實現任何東西。

// When setting: 

List<Object> liveMatchList = DataCenter.getMatchesByDate(context, date, 
        tIdsAsString, true); 
intent.putExtra("SER", liveMatchList); 

// When getting: 

List<Object> matchesList = (List<Object>)intent.getSerializableExtra("SER"); 

請問該怎麼辦?

+0

粘貼代碼嗎? – SMA 2014-11-03 09:27:59

+0

使用'Parcelable'。你有真棒方法'意圖#putParcelableArrayListExtra' – 2014-11-03 09:28:37

+0

我已經更新了我的問題,它只是列表,它不能被parcelable,因爲我使用的類'對象',這是不可parcelable。 – 2014-11-03 09:32:38

回答

0

嘗試用下面的代碼:

Intent intent = new Intent(context,DESTINATION ACTIVITY.class); 
intent.putExtra("data",YOUR ARRAY OF OBJECT) 
startActivity(intent); 

//獲取數據在另一個活動

ARRAY OF OBJECT = (ArrayList<String>) this.getIntent().getSerializableExtra("data"); 

//這裏I`已經使用ArrayList的解釋你。

+0

謝謝。但我不得不使用ArrayList (特別是) – 2014-11-03 09:40:29

+0

@HamzehSoboh雅,因爲我認爲你不能傳遞自定義對象。 – 2014-11-03 09:42:28

0
Intent i = getIntent(); 
stock_list = i.getStringArrayListExtra("stock_list"); 
and 
stock_list = getIntent().getStringArrayListExtra("stock_list"); 

Passing ArrayList through Intent

相關問題