从非活动类访问SQLite数据库

时间:2012-11-15 21:46:49

标签: android sqlite baseadapter

我有三个班级,

活动 - 使用我的single_list_item.xml显示列表视图 SQLiteOpenHelper - 我目前正在运行我的查询。

我的活动和我的SQLiteOpenHelper很好地协商。但是,我不确定如何从我的第三课

运行查询

BaseAdapter - 这个不在我的清单中,而且凭借我目前的技能,我无法从这个访问数据库 - 就像我通常从活动类那样。

我想在我的single_list_item.xml中隐藏textview,具体取决于查询中的值(查询只返回0或1)。我可以通过定义tv.setVisibility(View.GONE)等来轻松地隐藏它或静态显示它。 - 但我希望这个是活动的或不是取决于用户的设置。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

一种常见的方法是创建一个单例,首先用Context初始化。它包含SQLiteDatabase,并具有您在应用程序中使用的所有数据特定方法。

因此,从BaseAdapter中调用MyDBSingleton.getInstance()。getData()

确保单例类保留ApplicationContext,而不是对Activity / Service的引用,因为这可能导致泄漏......