我知道没有任何指定ContentProvIDers必须使用下面的数据库来存储数据,但有没有其他方法来存储必须共享到文件系统的最小数据量?
解决方法 我只是使用MatrixCursor来解决这个确切的问题.看看吧.编辑:对不起,当我回答时,我刚刚扫描了问题. ContentProvIDer是应用程序共享数据的唯一方式.应用程序中的活动可以使用SharedPreferences来处理较小的数据,并添加持久性.
编辑v2:这是我用来为我的ContentProvIDer的查询功能填充MatrixCursor的函数.我正在使用我创建的预定义VIEW,它返回一组不同的值,这会设置一个带有_IDs的游标,我可以传递给我的ExpandableListVIEw.
private Cursor getFactions() { MatrixCursor mc = new MatrixCursor(Model.Faction.PROJECTION); sqliteDatabase db = dbHelper.getReadableDatabase(); Cursor c = db.query(MODELFACTION_table_name,new String[] { Model.Faction.FACTION },null,Model.Faction.FACTION + " ASC"); c.movetoFirst(); do { mc.addRow(new Object[] { c.getposition(),c.getString(c.getColumnIndex(Model.Faction.FACTION))}); } while (c.movetoNext() && ! c.isAfterLast()); c.close(); db.close(); return mc; }总结
以上是内存溢出为你收集整理的android – 没有SQL的ContentProvider全部内容,希望文章能够帮你解决android – 没有SQL的ContentProvider所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)