【发布时间】:2015-09-08 17:44:42
【问题描述】:
我是一名新手程序员,我已经在这个问题上苦苦挣扎了两个星期。我正在使用来自 cocoapods 的 JTCalendar。它旨在返回- (BOOL)calendarHaveEvent:(JTCalendar *)calendar date:(NSDate *)date
{
下的日期
它将在日历上显示为一个点以显示事件。为了保存我的活动,我使用以下代码:
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
NSManagedObjectContext *context = [appDelegate managedObjectContext];
NSManagedObject *savedate;
savedate = [NSEntityDescription insertNewObjectForEntityForName:@"AlarmData" inManagedObjectContext:context];
[savedate setValue:CT forKey:@"alarmDate"];
[context save:&error];
BOOL isSaved = [appDelegate.managedObjectContext save:&error];
NSLog(@"success!!!!, %@", savedate);
以及以下尝试获取日期并“返回”它:
'
- (BOOL)calendarHaveEvent:(JTCalendar *)calendar date:(NSDate *)date
{
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
NSManagedObjectContext *context = [appDelegate managedObjectContext];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy"];
NSString *textDate = [NSString stringWithFormat:@"%@",[dateFormatter stringFromDate:[NSDate date]]];
NSLog(@"Date %@",textDate);
NSDate *startDate = [dateFormatter dateFromString:@"31-12-1981"];
NSDate *endDate = [dateFormatter dateFromString:@"31-12-2999"];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(alarmDate >= %@) AND (date <= %@)", startDate, endDate];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:[NSEntityDescription entityForName:@"AlarmData" inManagedObjectContext:context]];
[request setPredicate:predicate];
NSError *error;
NSArray *matchingData = [context executeFetchRequest:request error:&error];
NSString *alarmDate = [ NSString stringWithFormat:@"dd-MM-yyyy"];
for (NSManagedObject *obj in matchingData) {
alarmDate = [obj valueForKey:@"alarmDate"];
return alarmDate;'
不幸的是,结果看起来像这样,每个日期似乎都返回了一个点:
https://drive.google.com/file/d/0Bw0Kf2Z9-yb8Zm5LWnZUUkRJRzQ/view?usp=sharing
我只想让我的单身约会回来,被困了很长时间。谢谢!
【问题讨论】:
-
在使用 NSDateFormatter 处理非 UI 的任何内容时,请使用预定义的语言环境。如果你不这样做,系统将使用系统的,这可能是错误的来源。您可能还想检查请求错误。
标签: ios xcode core-data calendar nspredicate