2 回答
TA贡献1951条经验 获得超3个赞
您可以实施以下选项之一:
不好但很快 - 在你
Activity的构造函数中初始化列表而不是onCreate()方法正确但缓慢 - 将您的值存储在数据库中,并在需要时获取它们
TA贡献1833条经验 获得超4个赞
您可以遵循单例模式。本质上,您希望创建一个可以从任何地方访问的全局列表。你可以把它放在几个地方,我建议Application把它放在那里作为一个好的开始。
您可能有自己的Application,但如果没有,您还需要在清单中注册它。
所以,我创建了一个名为 的应用程序MyApp,它从Application. 这将包含我们可以从任何地方访问的答案列表。
public class MyApp extends Application {
// A public static list of answers
public static ArrayList<answers_preview_data> answers = new ArrayList<>();
@Override
public void onCreate() {
super.onCreate();
// do other app setup ...
}
}
现在,在您的问题中,我们可以轻松地向此列表添加新答案。
public class QuestionOne extends AppCompatActivity implements View.OnClickListener {
@Override
public void onClick(View v) {
// Adding the new answer to your list.
MyApp.answers.add(new answers_preview_data());
}
}
在您的 Grade 课程中,我们可以获取列表并在本地使用它。
public class Grade extends AppCompatActivity {
private ArrayList<answers_preview_data> mPreviewArrayList;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mPreviewArrayList = MyApp.answers;
// use your list ...
}
}
添加回答
举报
