我昨天在Java论坛上发布了这个问题,但它在Android部分可能更合适:
Java object added to ArrayList not showing
所以我通过bundle传递了一个ArrayList,但每当我拿到一个主题的Task ArrayList并添加一些东西时,这些更改都没有出现在ArrayList中。
要修复此问题而不是强制转换主题,我会传递ArrayList中的索引,并从索引中完成主题分配。
所以主题分配是subject = subjectsList.get(index);
而不是:
Bundle bundle = getIntent().getExtras();
if (bundle != null) {
subject = (Subject) bundle.get("selected_subject");
subjectsList = (ArrayList<Subject>) bundle.get("subjects_list");
}
我仍在使用ArrayList,所以我不确定为什么它在投射主题时不起作用。任何人都可以解释这个。我认为这可能与主题不同于ArrayList中的那个但我不确定。
当然,在一个活动中创建并通过bundle传递给另一个活动的主题和ArrayList是指同一个对象吗?