날짜와 시간으로 정렬 된 캘린더 이벤트의 쿼리를 반환하려고하므로이를 반복 할 수 있습니다. 그래서처럼 쿼리 한 :날짜와 시간별로 정렬 된 달력 쿼리
private Cursor mCursor = null;
private static final String[] COLS = new String[]{CalendarContract.Events.TITLE, CalendarContract.Events.DTSTART, CalendarContract.Events.AVAILABILITY};
mCursor = getContentResolver().query(CalendarContract.Events.CONTENT_URI, COLS, null, null, null);
mCursor.moveToLast();
를 만들 때와하지 날짜와 시간을 기준으로 일정 이벤트를 반환하는 것을 제외하고이 잘 작동합니다. 예를 들어 2012 년 12 월 25 일에 새 일정을 만들면 마지막 일정으로 표시됩니다.
내 마지막 목표는 현재 시간 전에 시작되는 첫 번째 이벤트를 찾고 싶습니다. 예를 들어, 현재 오전 8 시가되면 오전 8시 이전에 시작되는 첫 번째 이벤트를 찾고 싶습니다. 그런 다음 해당 이벤트의 기간을 점검하여 현재 진행중인 이벤트인지 확인합니다.
날짜와 시간순으로 정렬 된 쿼리를 반환하는 쉬운 방법이 있습니까? 아니면 결과를 쿼리 한 후에 정렬을 구현해야합니까? 더 나은 아직, 현재 시간 전에 첫 번째 이벤트를 찾는 간단한 방법이 있습니까?
감사합니다,하지만' "DESC"를'좋아하지 않았다. 나는 이것을 꺼내 시작 시간에 따라 정렬했다. – Jack
커서에서 날짜 컬렉션을 만들고 Collections.sort()를 사용할 수 있습니다. –
Collections.sort (dateList, 새 비교 자 () public int compare (날짜 date1, 날짜 date2) { return date1.after (date2); } }); –