Estoy usando un NSSortDescriptor para clasificar objetos NSDate en orden ascendente. Sin embargo, necesito fechas nulas para estar en la parte inferior de la lista, mientras que en este momento están en la parte superior.NSSortDescriptor y valores nulos
Respuesta
Al final he decidido que tienen valores nulos no es una buena idea y si yo quiero lo que eran un valor nulo para que aparezca en la parte inferior de la lista ascendente, debo establecer las fechas en [NSDate distantFuture] y verificarlas antes de mostrarlas. Resulta que esto tiene más sentido semántico dentro de las aplicaciones también.
Por supuesto, debería utilizar
initWithKey:ascending:selector:
y escribir mi propio selector de comparación
Parece que ya tiene una solución, pero para cualquier otra persona que desee seguir usando NSDates nil y tenerlos en la parte inferior, uso el siguiente código donde ordeno descendente, y luego invierta el orden de los objetos enviados a la comparación.
_sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"dueDate"
ascending:NO
comparator:^NSComparisonResult(id obj1, id obj2) {
return [obj2 compare:obj1];
}];
¿La comparación no tiene un comportamiento indefinido si obj1 es nulo y obj2 es una fecha? –
- 1. índices dispersos y valores nulos en mongo
- 2. Claves compuestas MySql y valores nulos
- 3. Predeterminado para valores nulos
- 4. C# - LINQToExcel - Valores Nulos
- 5. PHP/MySQL Insertar valores nulos
- 6. indexación valores nulos en PostgreSQL
- 7. Hibernate Valores nulos para @CollectionOfElements
- 8. Seleccionar valores nulos en SQLAlchemy
- 9. Leer valores nulos del archivo
- 10. columnas con valores nulos Actualizar
- 11. MySQL GROUP_CONCAT con valores nulos
- 12. ¿MySQL 5.0 indexa valores nulos?
- 13. Contando los valores nulos y no nulos en una sola consulta
- 14. Asignar a una matriz y reemplazar valores nulos emergentes
- 15. Spring Data NEO4J: relaciones tienen valores nulos
- 16. Ordenando una lista con valores nulos
- 17. ¿Insertar valores nulos en campos de fecha?
- 18. Valores de Concat en MySQL Query (para manejar valores nulos)
- 19. Oracle: Encontrar columnas con solo valores nulos
- 20. Adición de valores nulos en una matriz
- 21. ¿Los valores nulos ahorran espacio de almacenamiento?
- 22. ¿Eliminar valores nulos de un mapa?
- 23. ¿Cuándo Oracle indexa valores nulos de columna?
- 24. Cómo evitar valores nulos en Jasper informa
- 25. Recuento de valores nulos en MYSQL
- 26. Cómo usar datareader con valores nulos
- 27. jaxb: xs: valores nulos de atributos
- 28. Valores nulos de decodificación de SQL
- 29. Sumar columnas con valores nulos en oráculo
- 30. reemplazar los valores nulos en pivote sql
Exactamente. ¿Tiene una lógica personalizada para manejar valores nulos y luego llama a [myNSDateInstance compare: secondDate]; si la segunda fecha no es nula. –
Eso no ayudará, ya que 'compare:' se enviará a las instancias de NSDate; si 'nil' termina en el receptor, el resultado será' NSOrderedSame', y si el receptor no es 'nil' pero el argumento es, no creo que se garantice ningún resultado específico. –
Desafortunadamente, esto no funciona cuando se obtiene de Datos centrales. – pkamb