0

我的日历光标有问题。有时,在查询日历事件、与会者或只是日历详细信息的数据时,游标会返回空值。

例子

声明日历与会者光标

val projection = arrayOf(
CalendarContract.Attendees.ATTENDEE_ID, 
CalendarContract.Attendees.ATTENDEE_EVENT_ID,
CalendarContract.Attendees.ATTENDEE_NAME, 
CalendarContract.Attendees.ATTENDEE_EMAIL,
CalendarContract.Attendees.ATTENDEE_RELATIONSHIP, 
CalendarContract.Attendees.ATTENDEE_TYPE,
CalendarContract.Attendees.ATTENDEE_STATUS)
val attendeesCursor = 
context.contentResolver.query(CalendarContract.Attendees.CONTENT_URI, 
        projection, 
        CalendarContract.Attendees.EVENT_ID + "=?", 
        arrayOf(eventId.toString()), // eventiId is sent as param
        null
)
if (attendeesCursor != null && attendeesCursor.isBeforeFirst) {
    attendeesCursor.moveToFirst()
}
return attendeesCursor

提供与会者详细信息

                val attendee = EventAttendee(
                    cursor.getLong(cursor.getColumnIndex(CalendarContract.Attendees.ATTENDEE_ID)),
                    cursor.getLong(cursor.getColumnIndex(CalendarContract.Attendees.ATTENDEE_EVENT_ID)),
                    cursor.getString(cursor.getColumnIndex(CalendarContract.Attendees.ATTENDEE_NAME)) ?,
                    cursor.getString(cursor.getColumnIndex(CalendarContract.Attendees.ATTENDEE_EMAIL)),
                    cursor.getInt(cursor.getColumnIndex(CalendarContract.Attendees.ATTENDEE_RELATIONSHIP)),
                    cursor.getInt(cursor.getColumnIndex(CalendarContract.Attendees.ATTENDEE_TYPE)),
                    cursor.getInt(cursor.getColumnIndex(CalendarContract.Attendees.ATTENDEE_STATUS))
            )

有时,某些参加者详细信息为空...我不知道为什么...

这怎么可能?如何避免这种情况?

4

0 回答 0