Tengo una matriz con NSDate()
que el usuario agrega con una datePicker
, entonces estas fechas deben filtrarse por semana actual, mes actual y año. He intentado usar NSCalendar
pero no pude hacerlo funcionar. Quiero agrupar esto NSDates
en diferentes matrices dependiendo del intervalo de tiempo en el que están.
Respuestas
0 para la respuesta № 1Una forma es simplemente usar NSPredicate
:
NSArray *arrayOfDates = @[
[NSDate dateWithTimeIntervalSince1970:0],
[NSDate dateWithTimeIntervalSince1970:100],
[NSDate dateWithTimeIntervalSince1970:200]
];
NSDate *leftLimit = [NSDate dateWithTimeIntervalSince1970:50];
NSDate *rightLimit = [NSDate dateWithTimeIntervalSince1970:150];
NSPredicate *dateIntervalPredicate = [NSPredicate predicateWithFormat:@"self > %@ && self < %@", leftLimit, rightLimit];
NSArray *result = [array filteredArrayUsingPredicate:dateIntervalPredicate];
NSLog(@"Result: %@", result);
Por supuesto, puedes envolverlo en una función, es solo un ejemplo.