android - 在 android 自定义适配器中调用 OpenHelperManager.releaseHelper() 的最合适位置在哪里

标签 android ormlite

在自定义适配器中调用 OpenHelperManager.releaseHelper(); 的最合适位置。

对于其他上下文,此适配器在带有 ListView 的 fragment 中被调用。

按照下面的代码 fragment 进行操作。

public class CustomAdapter extends BaseAdapter {

    private DatabaseHelper mDatabaseHelper;
    private RuntimeExceptionDao<SomeObject, Long> dao;
    private List<SomeObject> mList;
    private Context context;

    public CustomAdapter(Context context) {
        this.context = context;
        mDatabaseHelper = OpenHelperManager.getHelper(context, DatabaseHelper.class);
        dao = mDatabaseHelper.getRuntimeExceptionDao();

        mList = dao.queryForAll();
    }

    @Override
    public int getCount() {
        return mList.size();
    }

    @Override
    public Object getItem(int position) {
        return mList.get(position);
    }

    @Override
    public long getItemId(int position) {
        return mList.get(position).getId();
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        LayoutInflater layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View row = layoutInflater.inflate(R.layout.item, parent, false);

        TextView title = (TextView) row.findViewById(R.id.txtTitle);

        SomeObject obj = mList.get(position);

        title.setText(obj.getTitle());

        return row;
    }
}

最佳答案

嗯,作为 OpenHelperManager 的原作者,我强烈建议您不要使用它。曾经。您不需要引用计数,也不需要关闭您的数据库。直接使用 OrmLiteSqliteOpenHelper。

我的博文,我在其中解释了我是如何写那个东西的,以及为什么你不需要它。

http://touchlabblog.tumblr.com/post/24474750219/single-sqlite-connection

关于android - 在 android 自定义适配器中调用 OpenHelperManager.releaseHelper() 的最合适位置在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24718942/

相关文章:

android - 在 WebView 中加载本地 html?

android - ScrollView 内的 glsurfaceview,移动但不剪切

android - 为什么我的可搜索 Activity 的 Intent.getAction() 为空?

java - Android ORMLite为库模型添加注解

java - ORMLite 初始化外部集合

java - 以编程方式嵌套布局

java - 如何使用php从Android将数据插入mysql数据库?

android - 如何将 ORMLite 导入到我的 Android 项目中?

android - Android 中带有 CursorAdapter 的 ORMLite

ormlite - 查询表中的最后一个 id