Articles of android cursorloader

分页列表和CursorLoader

我需要实现分页列表,它使用Loader从ContentProvider获取Cursor 。 我有页脚,当用户点击它 – 我需要添加下一个logging列表。 如何使用Loader刷新列表中的数据? 或者我应该在这里做什么?

带光标的ViewPager PagerAdapter – CursorLoader.onLoadFinished不会被不同的查询调用

我正在做一个报价应用程序,从数据库中拉引号,我需要在ViewPager中显示引号。 我创build了我的CursorPagerAdapter,这似乎很好。 public class MyCursorPagerAdapter extends PagerAdapter { private Cursor cursor; private LayoutInflater inflater; public MyCursorPagerAdapter(Context context, Cursor cursor) { Log.d(MainActivity.TAG, "MyCursorPagerAdapter.onCreate()"); this.cursor = cursor; this.inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); } public void swapCursor(Cursor cursor) { //if(cursor != null) { Log.d(MainActivity.TAG, "swapCursor()."); this.cursor = cursor; //notifyDataSetChanged(); //} } /** * Metóda destroyItem */ @Override public void […]

SQLite数据到一个RecyclerView

该应用程序在SQLite数据库中有数据。 UI主要是一个RecyclerView。 问题是如何最好地将数据从数据库传输到UI,同时保持主线程? 我原本计划使用CursorLoader,ContentProvider和RecyclerView。 但是阅读它看起来像RecyclerView没有对Cursor提供的数据的开箱即用的支持。 荡。 然后,我留下了几个其他的select… AsyncTask加载数据,将其放入模型对象,并传递到RecyclerView适配器。 除了丑陋之外,它不是configuration更改友好的。 一个自定义的Loader,它从SQL加载数据并将其推入模型对象。 使用Cursor加载器,当它返回Cursor迭代通过它将数据推送到模型对象。 我怀疑这会发生在主线上,可能会损害性能。 使用Otto发送请求消息以请求数据,然后通过返回消息返回模型对象集合。 可能有〜500件东西,所以我觉得我可能会更喜欢奥托这样做。 如果我使用的是模型对象而不是Cursor的集合,我看不到ContentProvider的好处,而且我也失去了UI自动刷新数据更改(这可能是有用的)的能力。 这些选项都没有吸引力,有没有更好的办法? 该应用程序是在时间压力,所以无论是需要相当快实施。 不幸的是,UI需要水平滚动,只针对棒棒糖,所以RecyclerView似乎比ListView更好。

使用CursorLoader获取电子邮件会导致邮件重复

我正在尝试使用联系人的电子邮件ID。 为此,我正在使用游标加载器。 有一个问题,我也得到重复的电子邮件ID。 如何删除电子邮件的重复。 我应该使用原始查询“SELECT DISTINCT”,而不是使用CursorLoader还是有一些其他的解决scheme? @Override public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) { String[] projection = new String[] { ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME, ContactsContract.CommonDataKinds.Email.DATA}; String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC"; String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP +"='1' AND " + Email.DATA +" IS NOT NULL AND " + Email.DATA +" != \"\" " ; //showing […]

带有CursorLoader的GROUP BY

如何为我的CursorLoader定义一个GROUP BY查询? 我看到的CursorLoader的两个构造函数可以使用单个Context或者Context , Uri , projection , selection , selectionArgs和sortOrder 。 但是没有groupBy 。 (我正在使用Android 2.3设备的支持包)

LoaderManager是做什么的?

我想了解loadermanager是做什么的。 任何人都可以分享一个例子吗? 创build游标时我必须使用它们吗? 如果不是我应该如何使用? 一个简单的例子非常感谢。

使用CursorLoader查询SQLite数据库并填充AutoCompleteTextView

我有一个SQLite数据库,我想查询。 我想通过ICS瞄准Android 2.2。 我遇到了这篇文章如何做到这一点,但它使用了不推荐的代码(不是asynchronous查询,而是在UI线程上)。 我已经读了,我可以使用CursorLoader与LoaderManager一起做这个任务的首选,最佳实践的方式(以不妨碍UI线程)。 问题是find一个简洁的例子来向我解释如何做到这一点。 1)加载数据库,2)查询它,3)使用结果来填充一个AutoCompletetextBox列表视图。 这样的例子存在吗?

限制CursorLoader中的查询

我想通过CursorLoader从sqlite数据库查询数据。 当我通过Android开发人员网站的文档,我无法find限制查询。 CursorLoader(Context context, Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) 我如何在CursorLoader中实现限制? 提前致谢

如何(正确地)从startManagingCursor转换到CursorLoader?

我更新我的android SDK到最新版本,现在它说, startManagingCursor()已deprecated 。 我需要帮助来更新我的代码来使用新的CursorLoader 。 private void fillData() { Cursor notesCursor = mDbHelper.fetchAllNotes(); startManagingCursor(notesCursor); NoteAdapter notes = new NoteAdapter(this, R.layout.notes_row, notesCursor); setListAdapter(notes); } 所以, startManagingCursor()是旧的,如果它被翻译,新的代码是什么样的?

CursorLoader和AsyncTaskLoader的区别

为什么要使用AsyncTaskLoader ,何时应该使用CursorLoader ,反之亦然? 在官方页面中 ,显示了应用程序列表示例,它使用AsyncTaskLoader而不是CursorLoader。 这两个有什么优点和缺点? 我读了关于CursorLoader不关心内容更改(在sqlite中)的地方。 谢谢!