Java 通过intent将自定义数组数据传递给另一个活动
我需要通过intents将DrawableRecipientChips[]芯片发送到另一个活动。请问我该怎么走Java 通过intent将自定义数组数据传递给另一个活动,java,android,android-activity,arraylist,Java,Android,Android Activity,Arraylist,我需要通过intents将DrawableRecipientChips[]芯片发送到另一个活动。请问我该怎么走 DrawableRecipientChips[]chips来自此如果需要将复杂对象从一个活动传递到另一个活动,则不必将它们放入意图中。您只需将它们放入公共静态变量中,如下所示: 在活动a中: final RecipientEditTextView emailRetv = (RecipientEditTextView) findViewById(R.id.email
DrawableRecipientChips[]chips来自此如果需要将复杂对象从一个
活动传递到另一个活动,则不必将它们放入意图中。您只需将它们放入公共静态
变量中,如下所示:
在活动a
中:
final RecipientEditTextView emailRetv =
(RecipientEditTextView) findViewById(R.id.email_retv);
emailRetv.setTokenizer(new Rfc822Tokenizer());
emailRetv.setAdapter(new BaseRecipientAdapter(this));
DrawableRecipientChips[] chips = phoneRetv.getSortedRecipients();
在活动b.onCreate()中
:
这不是一个完美的解决方案,因为如果Android终止了您的进程,用户返回应用程序,public static
变量将为空。但是如果出现这种情况,你可以测试一下,然后从头开始重新启动你的应用程序。你必须告诉我们一些关于数据类型DrawRecipientChips
@TedHopp我刚刚发布了一个到库的链接,因为DrawableRecipientChips
是一个接口而不是一个类,实际的数组元素几乎可以是任何东西。我认为在不知道对象是什么的情况下(或者除非它们实现了Serializable
或Parcelable
),不能将对象发送到另一个活动。
public static DrawableRecipientChips[] chips;
// Get reference to the chips array from the previous Activity
chips = ActivityA.chips;