作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个简单的 Android 应用程序,可以组织项目列表。我仍然是初学者,所以请原谅问题中的任何歧义。
主要 Activity 由现有项目列表和两个按钮组成,添加项目和检索项目。检索项目会从 SQLite 数据库中提取所有当前项目并显示它们。
当我添加一个项目时,它工作正常并将一个新项目添加到数据库中,当我关闭处理添加项目的 Activity 时,新项目不会自动出现,我必须再次检索数据。我希望能够在关闭添加项目 Activity 后立即在屏幕上看到新项目。在主要 Activity 中检索数据库中项目的代码是:
MovieDBAdapter dbadapter = new MovieDBAdapter(this);
ArrayList<HashMap<String, String>> movieList = dbadapter.getMovieList();
ListAdapter adapter = new SimpleAdapter(MainActivity.this, movieList, R.layout.view_movie_entry, new String[] {"id", "title"}, new int[] {R.id.movie_Id, R.id.title});
setListAdapter(adapter);
我尝试在其他 Activity 中添加此代码,但它引发了错误,因为 setListAdapter 方法仅适用于扩展 listActivity 的类,而添加新项目的类则不适用。
关于如何执行此操作的任何建议都很好。
总结:我想立即更新 Activity,而不必在 mainActivity 类中调用单独的方法。
最佳答案
使用
调用addItem Activity startActivityForResult(Intent intent, int requestCode);
一旦该项目加入调用
setResult(resultCode)
然后在Other activity中实现以下内容
@Override
protected void onActivityResult(int requestCode, int resultCode,
Intent data) {
// Check which request we're responding to
// here update the list
}
因此,一旦添加了项目,setReult 就会调用 OnActivityResult。
关于java - Android- 如何更新另一个 Activity 的数据。在你正在工作的那个之外,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29844008/
我是一名优秀的程序员,十分优秀!