Java 在上下文之外使用sqlite

Java 在上下文之外使用sqlite,java,android,sqlite,android-context,Java,Android,Sqlite,Android Context,我有一个扩展ArrayAdapter的类(AdapterDorteMas,是listView的适配器)。 我有另一个扩展SQLiteOpenHelper(sqlStuff)的类 因此,我想从adapter类中查询DB,但出现以下错误: 构造函数SqlStuff(adaptedortemas、String、null、int)未定义 Eclipse在我的SQLiteOpenHelper类中创建了一个构造函数来解决这个问题,但后来我得到了这个构造函数: 构造函数SQLiteOpenHelper(ada

我有一个扩展ArrayAdapter的类(AdapterDorteMas,是listView的适配器)。 我有另一个扩展SQLiteOpenHelper(sqlStuff)的类

因此,我想从adapter类中查询DB,但出现以下错误: 构造函数SqlStuff(adaptedortemas、String、null、int)未定义

Eclipse在我的SQLiteOpenHelper类中创建了一个构造函数来解决这个问题,但后来我得到了这个构造函数:

构造函数SQLiteOpenHelper(adaptedortemas、String、Object、int)未定义


我不明白发生了什么。。。有什么帮助吗?

这里有两种解决方案:

  • 您可以在上下文中添加一个字段
    private Context
    到可以存储上下文的自定义ArrayAdapter子类。然后可以将活动实例或应用程序上下文传递给构造函数。从那里,您可以调用
    SqlStuff(context,…)
    来创建您的SqlStuff类
  • 您可以使ArrayAdapter子类成为您正在使用它的活动的私有内部类,该类在与该活动相同的java文件中定义。然后,只需使用
    MyActivity,就可以很容易地获得外部活动类的实例,并将其传递给SqlStuff。在我的应用程序中,我更喜欢这种方法

  • 你可以发布一些代码吗..从SQLiteOpenHelper发布代码