我有一个问题:找不到仅用于辅助类的(上下文)自变量的构造函数...

class ORMDBHelper extends OrmLiteSqliteOpenHelper {
    private EventDAO mMyDao;

    public ORMDBHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db, ConnectionSource connectionSource) {
        try {
            TableUtils.createTable(connectionSource, MyClass.class);
        } catch (SQLException e) {
            e.printStackTrace();
        }

    }

    @Override
    public void onUpgrade(SQLiteDatabase db, ConnectionSource connectionSource,
            int oldVersion, int newVersion) {
        try {
            TableUtils.dropTable(connectionSource, MyClass.class, true);
            onCreate(db, connectionSource);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    public EventDAO getEventDAO() throws SQLException {
        if (mMyDao == null) {
            mMyDao = new MyDAO(getConnectionSource(), MyClass.class);
        }

        return mMyDao;
    }

    public void clearTable(Class dataClass) throws SQLException {
        TableUtils.clearTable(getConnectionSource(), dataClass);
    }

    @Override
    public void close() {
        super.close();

        mMyDao = null;
    }
}


行在哪里错误:

mDbHelper = OpenHelperManager.getHelper(context, ORMDBHelper.class);


我找到了一些答案,但是它们是解决混淆的方法。

最佳答案

找不到仅用于辅助类的(上下文)自变量的构造函数...


确保ORMDBHelper类是public,因为否则该类和构造函数将不可见。

否则,它可能引用了不同的ORMDBHelper类,或者Context参数的类型不正确?

关于android - 使用ORMLite时,构造函数发生错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16796195/

10-12 00:29
查看更多