2012-03-22 61 views
0

我有這個應用程序有2個類,在第一個類中我定義了一個列表數組,我想在第二個類中訪問,我該怎麼做?一類(數組擴展listActivity,另一類擴展爲Activity)。我認爲發佈我的代碼並不是一件好事,因爲我相信這是一個快速解決方案,我只是不知道它。 Allthough我可以發佈它,如果你沒有看到實際的代碼不能幫助我。android通過類訪問變量

+1

http://androidideasblog.blogspot.in/2010/02/passing-list-of-objects-between.html – 2012-03-22 18:06:39

+0

對我來說似乎就像這些例子所有r是否讓我創建一個實現可分包的類?但我需要將我的整個數組從一個listactivity類發送到一個活動類,在這裏找不到任何工作.. :( – Jacco 2012-03-22 18:36:42

回答

0

您可以通過使用intentExtras的ArrayList<String>的活動。

ArrayList<String> myArrayList = new ArrayList<String>(); 
// populate your array -> if you want to send objects make a string form of them 

Intent myIntent = new Intent(this, Activit2.class); 
mtIntent.putStringArrayList("my_array_list", myArrayList); 

在活性2

Intent intent = getIntent(); 
List<String> stringMediaList = intent.getStringArrayListExtra("my_array_list"); 

for (int i = 0; i < stringMediaList.size(); i++) { 
    //reconstruct object if needed 
} 

這將工作,如果你不想使用parcelable

+0

非常感謝!很好,只是最後一個問題,但如果你看到這個。我怎麼能傳遞一個int到另一個類?(沒有intArray只是一個普通的int)應該有一個類似的方式嗎? – Jacco 2012-03-22 20:18:24

+0

是的,myIntent.putIntegerArrayListExtra(「my_integer_array」,值)其中值是一個ArrayList 。 對於普通的int使用myIntent .putExtra(「my_int」,9001); – 2012-03-23 02:26:50

0

您可以使用自定義ApplicationContext到活動之間共享的全局狀態 - 看here更多細節..