2010-06-28 25 views
3

我有一個服務,產生一個SortedSet對象的結果。我需要將它傳遞給另一個將使用它的Intent。首先放入通知區域,然後當用戶操作它時,將需要觸發該活動。如何將一個SortedSet作爲一個Intent的額外?

因爲它自己的SortedSet不是Parcelable也不是Serializable所以它不會工作。 SortedSet中的單個項目已經可以分類,並且使用得很好,但我需要整個集合。

如何通過SortedSet作爲意圖的額外?

+0

我正在尋找相同的! – Jorgesys 2010-06-28 22:52:43

回答

1

我發現:

// passes as serializable and as Array 
intent.putExtra("results", result.toArray()); 

然後通過重構陣列到SortedSet讀出。

在我的情況是:

Serializable s = this.getIntent().getSerializableExtra("results"); 
Object[] o = (Object[]) s; 
if (o != null) { 
    resultSet = new TreeSet<RatedMessage>(new Comp()); 
    for (int i = 0; i < o.length; i++) { 
     if (o[i] instanceof RatedMessage) { 
      resultSet.add((RatedMessage) o[i]); 
     } 
    } 
} 

現在我可以進一步使用resultSet

相關問題