簡體   English   中英

Android - 在活動之間傳遞一組類

[英]Android - Passing an Array of Classes Between Activities

我在一個數組中有三個不同的類或活動。 每個類代表一個謎題。 我有一個功能,可以在應用程序開始時重新排列數組,這樣用戶每次啟動應用程序時都不會看到相同的拼圖。

我想將這個類的數組從activity傳遞給activity。 我能夠將數組設置為傳遞,但不知道如何在以下活動中檢索它。

這是Activity One中的設置

Class[] array = {PuzzleOne.class, PuzzleTwo.class, PuzzleThree.class};
Intent goToPuzzleOne = new Intent(MainActivity.this, array[0]);
goToPuzzleOne.putExtra("classes",array);

如何在Activity 2中檢索此類? 這是我到目前為止所擁有的

 Bundle extras = getIntent().getExtras();
 Class[] array = extras.NO IDEA HOW TO RETRIEVE IT HERE

如果有解決方案,請告訴我。 謝謝。

由於我們正在處理地圖,你應該選擇:

Object[] array = (Object[]) extras.get("classes"); // you cannot cast to Class[] !

然后:

Class a = (Class) array[0]; // and etc.

你可以看看putExtra("classes", array)的第二個參數的類型是什么,結果是Serializable

因此,您可以使用getSerializable()將其返回並將其getSerializable()為Class數組:

Class[] array = (Class[]) extras.getSerializable("classes");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM