我刚刚启动android,我对sqlite db有一个快速的问题。
我创建了一个包含几列的数据库,但现在只从中撤出一列。我想知道是否应该将该列撤回到一个字符串数组中,然后将其填充到列表视图中,或者直接将其放入各种类型的适配器中(我将开始阅读)。
另外,如果我打开一个新活动,并更改某个项目的信息(删除或插入),然后返回到同一个活动,它会自动更新还是我必须覆盖onstart()
答案 0 :(得分:1)
从Android中的数据库填充用户界面的最佳方法是使用CursorLoader
。尝试阅读dev-guide here。
基本上,你实现LoaderManager.Callbacks
,并在onCreate
中查询数据库并将响应传递给加载器。
答案 1 :(得分:0)
首先从db中调用一个返回Cursor的函数
Cursor cursor = dbhelper.Function();
然后使用字符串数组
String [] from = new String [] {
Dbadapter.KEY_NAME
}
然后使用int数组来分配它
Int [] to = new int [] {
R.id.textview1
}
然后设置适配器
SimpleCursorAdapter sca = new SimpleCursorAdapter ( this, R.layout.listview, cursor, from, to, 0);
答案 2 :(得分:-3)
最好覆盖onResume(),因为每次更新并返回你的app onResume()都会得到一个回调(参考Android life cycle activities)。在这里,您只能获取该列的记录并在列表中对其进行充气。
欢迎来到Android开发!祝一切顺利!