我使用以下代码使用适配器
查询数据库db = new DBAdapter(this);
db.open();
String strname = roomid;
Cursor c = db.getAsset(strname);
if (c.moveToFirst())
DisplayContact(c);
db.close();
问题我在课堂上我正在使用它我得到了错误
构造函数DBAdapter(SubsamplingScaleImageView)未定义
唯一能阻止此错误的是在()中添加NULL 然而,这在运行时使用空指针异常
崩溃应用程序任何人都可以帮忙意味着我可以理解我需要定义什么才能运行我的查询?
如果我在我的主要活动中插入上述代码,那么它的工作原理很完美,但使用它的类如下设置
public class SubsamplingScaleImageView扩展了View实现OnTouchListener {
任何帮助感谢
标记
UPDATE 尝试了以下但仍然提供了无效的指示
this.context = context.getApplicationContext();
db = new DBAdapter(this.context);
db.open();
String strname = roomid;
Cursor c = db.getAsset(strname);
if (c.moveToFirst())
DisplayContact(c);
db.close();
由于
标记
答案 0 :(得分:0)
由于SubsamplingScaleImageView不是上下文类,因此您需要为其提供上下文。您显然正在使用以下内容在SubsamplingScaleImageView类中获取上下文:
Context context;
SubsamplingScaleImageView(Context context) {
this.context = context; // this is the context you need to pass - not an instance of the ImageView class
}
现在,请执行以下操作:
db = new DBAdapter(context);
除非你真的知道自己在做什么,否则不应该使用getApplicationContext()。此时,我假设您在调用SubsamplingImageView构造函数时传入活动或您在活动中获得的上下文。