2013-03-08 44 views
0

我想通過List<String[]>意圖活動,然後檢索它。任何人都知道如何正確地做到這一點?謝謝通過意向通過列表<String[]>

+0

的可能的複製[Intent.putExtra列表](http://stackoverflow.com/questions/6543811/intent-putextra-list) – cammando 2017-01-26 08:05:35

回答

4

我會把它放入一個可序列化的,然後將包中的可序列化對象傳遞給下一個活動。

Bundle bundle = new Bundle(); 
bundle.putSerializable("list", serializableList); 

mainIntent.putExtras(bundle); 
startActivity(mainIntent); 

java.util.ArrayList已經實現了Serializable接口。所以這對你的目的來說是完美的。 然後在其他活動,你可以使用下面的代碼來檢索列表

Bundle bundle = getIntent().getExtras(); 
userInfo = (ArrayList) bundle.getSerializable("list"); 

希望它能幫助。

-1

將變量放入對象的靜態屬性中。

ex。

public class Util { 

    public static List<String[]> mystaticlist; 

} 

與靜態接入從第二活動:

List<String[]> mystaticlist = Util.mystaticlist; 
-1

這是可能的,但你必須把它作爲一個序列化的,你需要的時候你提取額外投的結果。由於ArrayList實現了Serializable,並且String []本身是可序列化的,所以代碼很簡單。通過它:

ArrayList<String[]> list = . . .; 
Intent i = . . .; 

i.putExtra("strings", list); 

找回它:

Intent i = . . .; 
ArrayList<String[]> list = (ArrayList<String[]>) getSerializableExtra("strings");