我有一个活动组,它开始了2个活动。当用户按下其中一个活动上的按钮时,活动组将填充ArrayList。
我想知道是否有办法让我的两个活动都能访问这个ArrayList。
这就是我现在所拥有的:
public class ExampleGroup extends ActivityGroup {
public static ExampleGroup group;
ArrayList<String> strs = new ArrayList<String>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
group = this;
View exampleView = getLocalActivityManager().startActivity(
"Example",
new Intent(this, Example.class).addFlags(
Intent.FLAG_ACTIVITY_CLEAR_TOP))
.getDecorView();
setContentView(exampleView);
}
public void populateArrayList(){
//code to do it
}
}
public class Example extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
ExampleGroup.group.populateArrayList();
ArrayList<String> strs2 = ExampleGroup.group.strs;
Log.i("ArrayList contents", strs2);
}
}
arraylist返回null。有什么我想念的,或者有更好的方法吗?
答案 0 :(得分:2)
是的,基本上你想要在两个活动之间共享一个模型对象,这与你的程序结构有很大关系。有关如何完成此操作的详细信息,请参阅此帖:
Where should I put global methods and variables in an Android app?