无法在Fragment Activity类下创建数据库管理器

时间:2012-06-24 11:02:23

标签: android sqlite android-fragments

我现在正在尝试在Fragment类下创建新的数据库管理器。但不幸的是,我只是陷入了一些我以前从未面对的错误。请看下面的代码。

public class About extends Fragment {
DBManager gDatabase = new DBManager(this);
private AboutInfo ai;

错误代码是构造函数DBManage(About)未定义。 提供两种快速解决方法:

  

将构造函数'DBManager(Context)更改为'DBManager(About)''   创建构造函数'DBManager(About)'

这是我的数据库管理员代码。

public DBManager(Context context) {
    super(context, DB_NAME, null, 1);
    DBManager.myContext = context;
}

我的代码出了什么问题?任何快速帮助将是欣赏。

2 个答案:

答案 0 :(得分:3)

它需要一个Activity上下文,而不是Fragment上下文。

尝试:

DBManager gDatabase = new DBManager(getActivity()); 

答案 1 :(得分:1)

使用新的DBManager(this.getActivity());但是在OnCreateView或其他函数after onAttach'中根据Fragment lifecyle ......