【问题标题】:Using sqlite out of a Context在上下文之外使用 sqlite
【发布时间】:2015-06-16 06:29:15
【问题描述】:

我有一个扩展 ArrayAdapter 的类(adaptadorTemas,是一个列表视图的适配器)。 我有另一个扩展 SQLiteOpenHelper (sqlStuff) 的类。

所以,我想从我的适配器类查询数据库,但我收到了这个错误: 构造函数 SqlStuff(AdaptadorTemas, String, null, int) 未定义

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

构造函数 SQLiteOpenHelper(AdaptadorTemas, String, Object, int) 未定义

我不明白发生了什么...请帮忙?

【问题讨论】:

  • 能否请您发布一些代码..
  • 从 SQLiteOpenHelper 发布代码

标签: java android sqlite android-context


【解决方案1】:

这里有两种解决方案:

  1. 您可以将字段private Context theContext; 添加到可以存储上下文的自定义ArrayAdapter 子类中。然后您可以将 Activity 实例或 Application Context 传递给构造函数。从那里,您可以调用 SqlStuff(theContext, ...) 来创建您的 SqlStuff 类。
  2. 您可以使您的 ArrayAdapter 子类成为您使用它的 Activity 的私有内部类,在与该 Activity 相同的 java 文件中定义。然后,您可以通过MyActivity.this 轻松获取外部 Activity 类的实例以传递给 SqlStuff。在我的应用程序中,我更喜欢这种方法。

【讨论】:

    猜你喜欢
    • 2011-02-02
    • 2013-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-01
    • 1970-01-01
    • 2019-10-29
    相关资源
    最近更新 更多