List of usage examples for android.support.v4.content CursorLoader CursorLoader
public CursorLoader(Context context, Uri uri, String[] projection, String selection, String[] selectionArgs,
String sortOrder)
From source file:com.deliciousdroid.platform.BookmarkManager.java
public static CursorLoader SearchBookmarks(String query, String tagname, String username, Context context) { final String[] projection = new String[] { Bookmark._ID, Bookmark.Url, Bookmark.Description, Bookmark.Meta, Bookmark.Tags, Bookmark.Shared, Bookmark.Synced, Bookmark.Deleted }; String selection = null;//from ww w . j a va 2s .c o m final String sortorder = Bookmark.Description + " ASC"; final String[] queryBookmarks = query.split(" "); final ArrayList<String> queryList = new ArrayList<String>(); final ArrayList<String> selectionlist = new ArrayList<String>(); if (query != null && query != "" && (tagname == null || tagname == "")) { for (String s : queryBookmarks) { queryList.add("(" + Bookmark.Tags + " LIKE ? OR " + Bookmark.Description + " LIKE ? OR " + Bookmark.Notes + " LIKE ?)"); selectionlist.add("%" + s + "%"); selectionlist.add("%" + s + "%"); selectionlist.add("%" + s + "%"); } selectionlist.add(username); selection = TextUtils.join(" AND ", queryList) + " AND " + Bookmark.Account + "=?"; } else if (query != null && query != "") { for (String s : queryBookmarks) { queryList.add("(" + Bookmark.Description + " LIKE ? OR " + Bookmark.Notes + " LIKE ?)"); selectionlist.add("%" + s + "%"); selectionlist.add("%" + s + "%"); } selection = TextUtils.join(" AND ", queryList) + " AND " + Bookmark.Account + "=? AND " + "(" + Bookmark.Tags + " LIKE ? OR " + Bookmark.Tags + " LIKE ? OR " + Bookmark.Tags + " LIKE ? OR " + Bookmark.Tags + " = ?)"; selectionlist.add(username); selectionlist.add("% " + tagname + " %"); selectionlist.add("% " + tagname); selectionlist.add(tagname + " %"); selectionlist.add(tagname); } else { selectionlist.add(username); selection = Bookmark.Account + "=?"; } selection += " AND " + Bookmark.Deleted + "=0"; return new CursorLoader(context, Bookmark.CONTENT_URI, projection, selection, selectionlist.toArray(new String[] {}), sortorder); }
From source file:com.battlelancer.seriesguide.ui.ShowsFragment.java
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { StringBuilder selection = new StringBuilder(); // create temporary copies final boolean isFilterFavorites = mIsFilterFavorites; final boolean isFilterUnwatched = mIsFilterUnwatched; final boolean isFilterUpcoming = mIsFilterUpcoming; final boolean isFilterHidden = mIsFilterHidden; // restrict to favorites? if (isFilterFavorites) { selection.append(Shows.FAVORITE).append("=1"); }/*from w w w .ja v a 2 s .c o m*/ final long timeInAnHour = System.currentTimeMillis() + DateUtils.HOUR_IN_MILLIS; // restrict to shows with a next episode? if (isFilterUnwatched) { if (selection.length() != 0) { selection.append(" AND "); } selection.append(Shows.NEXTAIRDATEMS).append("!=").append(DBUtils.UNKNOWN_NEXT_RELEASE_DATE); // exclude shows with upcoming next episode if (!isFilterUpcoming) { selection.append(" AND ").append(Shows.NEXTAIRDATEMS).append("<=").append(timeInAnHour); } } // restrict to shows with an upcoming (yet to air) next episode? if (isFilterUpcoming) { if (selection.length() != 0) { selection.append(" AND "); } // Display shows upcoming within <limit> days + 1 hour int upcomingLimitInDays = AdvancedSettings.getUpcomingLimitInDays(getActivity()); long latestAirtime = timeInAnHour + upcomingLimitInDays * DateUtils.DAY_IN_MILLIS; selection.append(Shows.NEXTAIRDATEMS).append("<=").append(latestAirtime); // exclude shows with no upcoming next episode if not filtered for unwatched, too if (!isFilterUnwatched) { selection.append(" AND ").append(Shows.NEXTAIRDATEMS).append(">=").append(timeInAnHour); } } // special: if hidden filter is disabled, exclude hidden shows if (selection.length() != 0) { selection.append(" AND "); } selection.append(Shows.HIDDEN).append(isFilterHidden ? "=1" : "=0"); // keep unwatched and upcoming shows from becoming stale schedulePeriodicDataRefresh(true); return new CursorLoader(getActivity(), Shows.CONTENT_URI, ShowsQuery.PROJECTION, selection.toString(), null, ShowsDistillationSettings.getSortQuery(mSortOrderId, mIsSortFavoritesFirst, mIsSortIgnoreArticles)); }
From source file:com.kyakujin.android.autoeco.ui.MainActivity.java
@Override public Loader<Cursor> onCreateLoader(int id, Bundle arg1) { switch (id) { case SchedQuery.LOADER_ID: String order = SchedTbl._ID; return new CursorLoader(this, SchedTbl.CONTENT_URI, SchedQuery.PROJECTION, null, null, order); case BatteryQuery.LOADER_ID: return new CursorLoader(this, BatteryTbl.CONTENT_URI, BatteryQuery.PROJECTION, null, null, null); case ManualQuery.LOADER_ID: return new CursorLoader(this, ManualTbl.CONTENT_URI, ManualQuery.PROJECTION, null, null, null); default:/*from ww w .j a v a 2 s .c om*/ break; } return null; }
From source file:com.jefftharris.passwdsafe.sync.MainActivity.java
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { return new CursorLoader(this, PasswdSafeContract.Providers.CONTENT_URI, PasswdSafeContract.Providers.PROJECTION, null, null, null); }
From source file:com.haibison.android.anhuu.FragmentFiles.java
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { mLoading = true;//w w w .ja v a 2s.c o m mNewLoader = true; mViewGroupFiles.setVisibility(View.GONE); mViewLoadingHandler.postDelayed(new Runnable() { @Override public void run() { mViewLoading.setVisibility(View.VISIBLE); }// run() }, Display.DELAY_TIME_FOR_SHORT_ANIMATION); getActivity().supportInvalidateOptionsMenu(); final Uri path = ((Uri) args.getParcelable(PATH)); buildAddressBar(path); String positiveRegex = getArguments().getString(FileChooserActivity.EXTRA_POSITIVE_REGEX_FILTER); String negativeRegex = getArguments().getString(FileChooserActivity.EXTRA_NEGATIVE_REGEX_FILTER); if (BuildConfig.DEBUG) Log.d(CLASSNAME, "onCreateLoader() >> path = " + path); return new CursorLoader(getActivity(), BaseFile.genContentUriBase(path.getAuthority()).buildUpon() .appendPath(path.getLastPathSegment()) .appendQueryParameter(BaseFile.PARAM_TASK_ID, Integer.toString(mIdLoaderData)) .appendQueryParameter(BaseFile.PARAM_SHOW_HIDDEN_FILES, Boolean.toString(getArguments().getBoolean(FileChooserActivity.EXTRA_DISPLAY_HIDDEN_FILES))) .appendQueryParameter(BaseFile.PARAM_FILTER_MODE, Integer.toString(mFilterMode)) .appendQueryParameter(BaseFile.PARAM_SORT_BY, Integer.toString(Display.getSortType(getActivity()))) .appendQueryParameter(BaseFile.PARAM_SORT_ASCENDING, Boolean.toString(Display.isSortAscending(getActivity()))) .appendQueryParameter(BaseFile.PARAM_LIMIT, Integer.toString(mMaxFileCount)) .appendQueryParameter(BaseFile.PARAM_POSITIVE_REGEX_FILTER, TextUtils.isEmpty(positiveRegex) ? "" : positiveRegex) .appendQueryParameter(BaseFile.PARAM_NEGATIVE_REGEX_FILTER, TextUtils.isEmpty(negativeRegex) ? "" : negativeRegex) .build(), null, null, null, null); }
From source file:com.handpoint.headstart.client.ui.ReceiptActivity.java
private String getFilePathFromContentUrl(String url) { String[] proj = { MediaStore.Images.Media.DATA }; CursorLoader loader = new CursorLoader(this, Uri.parse(url), proj, null, null, null); Cursor cursor = loader.loadInBackground(); int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); cursor.moveToFirst();//ww w.j ava2 s. c o m return cursor.getString(column_index); }
From source file:com.google.android.apps.mytracks.TrackListActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setVolumeControlStream(TextToSpeech.Engine.DEFAULT_STREAM); setContentView(R.layout.track_list); AnalyticsUtils.sendPageViews(this, this.getLocalClassName() + "/create"); ApiAdapterFactory.getApiAdapter().hideActionBar(this); Display display = getWindowManager().getDefaultDisplay(); boolean devicesZ = display.getWidth() > 720 || display.getHeight() > 720; if (devicesZ) { // Disable the Keyboard help link View v = findViewById(R.id.help_keyboard_q); if (v != null) v.setVisibility(View.GONE); v = findViewById(R.id.help_keyboard_a); if (v != null) v.setVisibility(View.GONE); }//from www. java 2s . c o m trackRecordingServiceConnection = new TrackRecordingServiceConnection(this, bindChangedCallback); SharedPreferences sharedPreferences = getSharedPreferences(Constants.SETTINGS_NAME, Context.MODE_PRIVATE); sharedPreferences.registerOnSharedPreferenceChangeListener(sharedPreferenceChangeListener); sharedPreferenceChangeListener.onSharedPreferenceChanged(sharedPreferences, null); trackController = new TrackController(this, trackRecordingServiceConnection, true, recordListener, stopListener); // START MOD ImageButton helpButton = (ImageButton) findViewById(R.id.listBtnBarHelp); if (helpButton != null) helpButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent = IntentUtils.newIntent(TrackListActivity.this, HelpActivity.class); startActivity(intent); } }); /* * Record = Pause and Stop managed by track controller ImageButton * recordButton = (ImageButton) findViewById(R.id.listBtnBarRecord); * recordButton.setOnClickListener(recordListener); ImageButton stopButton = * (ImageButton) findViewById(R.id.listBtnBarStop); * stopButton.setOnClickListener(stopListener); */ ImageButton searchButton = (ImageButton) findViewById(R.id.listBtnBarSearch); if (searchButton != null) searchButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { onSearchRequested(); } }); ImageButton settingsButton = (ImageButton) findViewById(R.id.listBtnBarSettings); if (settingsButton != null) settingsButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent = IntentUtils.newIntent(TrackListActivity.this, SettingsActivity.class); startActivity(intent); } }); // END MOD listView = (ListView) findViewById(R.id.track_list); listView.setEmptyView(findViewById(R.id.track_list_empty_view)); listView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Intent intent = IntentUtils.newIntent(TrackListActivity.this, TrackDetailActivity.class) .putExtra(TrackDetailActivity.EXTRA_TRACK_ID, id); startActivity(intent); } }); resourceCursorAdapter = new ResourceCursorAdapter(this, R.layout.list_item, null, 0) { @Override public void bindView(View view, Context context, Cursor cursor) { int idIndex = cursor.getColumnIndex(TracksColumns._ID); int iconIndex = cursor.getColumnIndex(TracksColumns.ICON); int nameIndex = cursor.getColumnIndex(TracksColumns.NAME); int categoryIndex = cursor.getColumnIndex(TracksColumns.CATEGORY); int totalTimeIndex = cursor.getColumnIndexOrThrow(TracksColumns.TOTALTIME); int totalDistanceIndex = cursor.getColumnIndexOrThrow(TracksColumns.TOTALDISTANCE); int startTimeIndex = cursor.getColumnIndexOrThrow(TracksColumns.STARTTIME); int descriptionIndex = cursor.getColumnIndex(TracksColumns.DESCRIPTION); boolean isRecording = cursor.getLong(idIndex) == recordingTrackId; int iconId = TrackIconUtils.getIconDrawable(cursor.getString(iconIndex)); String name = cursor.getString(nameIndex); String totalTime = StringUtils.formatElapsedTime(cursor.getLong(totalTimeIndex)); String totalDistance = StringUtils.formatDistance(TrackListActivity.this, cursor.getDouble(totalDistanceIndex), metricUnits); long startTime = cursor.getLong(startTimeIndex); String startTimeDisplay = StringUtils.formatDateTime(context, startTime).equals(name) ? null : StringUtils.formatRelativeDateTime(context, startTime); ListItemUtils.setListItem(TrackListActivity.this, view, isRecording, recordingTrackPaused, iconId, R.string.icon_track, name, cursor.getString(categoryIndex), totalTime, totalDistance, startTimeDisplay, cursor.getString(descriptionIndex)); } }; listView.setAdapter(resourceCursorAdapter); ApiAdapterFactory.getApiAdapter().configureListViewContextualMenu(this, listView, contextualActionModeCallback); getSupportLoaderManager().initLoader(0, null, new LoaderCallbacks<Cursor>() { @Override public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) { return new CursorLoader(TrackListActivity.this, TracksColumns.CONTENT_URI, PROJECTION, null, null, TracksColumns._ID + " DESC"); } @Override public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) { resourceCursorAdapter.swapCursor(cursor); } @Override public void onLoaderReset(Loader<Cursor> loader) { resourceCursorAdapter.swapCursor(null); } }); trackDataHub = TrackDataHub.newInstance(this); if (savedInstanceState != null) { startGps = savedInstanceState.getBoolean(START_GPS_KEY); } // Test repeated messaging if (!started) showStartupDialogs(); }
From source file:com.example.android.contactslist.ui.groupsEditor.GroupsEditorFragment.java
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { Uri contentUri;//from ww w .j a va 2 s . c o m // switch between search query and a group query switch (id) { case GroupsListQuery.QUERY_ID: return new CursorLoader(getActivity(), GroupsListQuery.CONTENT_URI, GroupsListQuery.PROJECTION, GroupsListQuery.SELECTION, null, GroupsListQuery.SORT_ORDER); case GroupsListStatsQuery.QUERY_ID: return new CursorLoader(getActivity(), GroupsListStatsQuery.CONTENT_URI, GroupsListStatsQuery.PROJECTION, GroupsListStatsQuery.SELECTION, GroupsListStatsQuery.ARGS, GroupsListStatsQuery.SORT_ORDER); default: Log.e(TAG, "onCreateLoader - incorrect ID provided (" + id + ")"); return null; } }
From source file:com.onegravity.contactpicker.core.ContactPickerActivity.java
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { String selection = ""; if (mOnlyWithPhoneNumbers) { selection = ContactsContract.Contacts.HAS_PHONE_NUMBER; }//from w ww . j ava2s . c o m switch (id) { case CONTACTS_LOADER_ID: return new CursorLoader(this, CONTACTS_URI, CONTACTS_PROJECTION, selection, null, CONTACTS_SORT); case CONTACT_DETAILS_LOADER_ID: return new CursorLoader(this, CONTACT_DETAILS_URI, CONTACT_DETAILS_PROJECTION, selection, null, null); case GROUPS_LOADER_ID: return new CursorLoader(this, GROUPS_URI, GROUPS_PROJECTION, GROUPS_SELECTION, null, GROUPS_SORT); } return null; }
From source file:com.nononsenseapps.feeder.ui.FeedFragment.java
@Override public Loader onCreateLoader(final int ID, final Bundle bundle) { if (ID == FEEDITEMS_LOADER) { return new FeedItemDeltaCursorLoader(getActivity(), FeedItemSQL.URI_FEED_ITEMS.buildUpon() .appendQueryParameter(RssContentProvider.QUERY_PARAM_LIMIT, "50").build(), FeedItemSQL.FIELDS, getLoaderSelection(), getLoaderSelectionArgs(), FeedItemSQL.COL_PUBDATE + " DESC"); } else if (ID == FEED_LOADER) { return new CursorLoader(getActivity(), Uri.withAppendedPath(FeedSQL.URI_FEEDS, Long.toString(id)), FeedSQL.FIELDS, null, null, null); } else if (ID == FEED_SETTINGS_LOADER) { String where;/*from w w w . j a va 2s . c o m*/ String[] whereArgs; if (id > 0) { where = Util.WHEREIDIS; whereArgs = Util.LongsToStringArray(id); } else { where = FeedSQL.COL_TAG + " IS ?"; whereArgs = Util.ToStringArray(tag); } return new CursorLoader(getActivity(), FeedSQL.URI_FEEDS, Util.ToStringArray("DISTINCT " + FeedSQL.COL_NOTIFY), where, whereArgs, null); } return null; }