我正在努力学习EventKit提醒的基础知识。我正在尝试在这里重新创建教程:http://www.techotopia.com/index.php/Using_iOS_6_Event_Kit_to_Create_Date_and_Location_Based_Reminders
但是,当我尝试构建项目时,我在IBAction和CreateReminder的.m文件中都得到了“缺少方法声明的上下文”的错误。我试着在这里寻求建议,但似乎仍然找不出我做错了什么。如果这些教程总是遗漏了一些阻止它构建的基本信息,那么我不得不说这些教程有什么用。如果有人能帮上忙,我将不胜感激。
#import <UIKit/UIKit.h>
#import <EventKit/EventKit.h>
@interface ReminderAppFirstViewController : UIViewController
@property (strong, nonatomic) EKEventStore *eventStore;
@property (strong, nonatomic) IBOutlet UIDatePicker *myDatePicker;
@property (strong, nonatomic) IBOutlet UITextField *reminderText;
- (IBAction)setReminder:(id)sender;
- (void)createReminder;
@end
- (IBAction)setReminder:(id)sender {
if (_eventStore == nil)
{
_eventStore = [[EKEventStore alloc]init];
[_eventStore requestAccessToEntityType:EKEntityTypeReminder comnpletion: ^(BOOL granted, NSError *error) ] {
if (!granted)
NSLog(@"Access to store not granted");
}];
}
if (_eventStore != nil)
[self createReminder];
}
- (void)createReminder
{
EKReminder *reminder = [EKReminder
reminderWithEventStore:self.eventStore];
reminder.title = _reminderText.text;
reminder.calendar = [_eventStore defaultCalendarForNewReminders];
NSDate *date = [_myDatePicker date];
EKAlarm *alarm = [EKAlarm alarmWithAbsoluteDate:date];
[reminder addAlarm:alarm];
NSError *error = nil;
[_eventStore saveReminder:reminder commit:YES error:&error];
if (error)
NSLog(@"error = %@", error);
}发布于 2013-01-17 16:53:41
下面的部分看起来应该在.h文件中,而不是.m中。在接口的@ .m部分中声明的属性本质上是私有的,只能在.m中访问。这些方法也不合时宜。也许是教程中的一个错误。
#import <UIKit/UIKit.h>
#import <EventKit/EventKit.h>
@interface ReminderAppFirstViewController : UIViewController
@property (strong, nonatomic) EKEventStore *eventStore;
@property (strong, nonatomic) IBOutlet UIDatePicker *myDatePicker;
@property (strong, nonatomic) IBOutlet UITextField *reminderText;
- (IBAction)setReminder:(id)sender;
- (void)createReminder;
@endhttps://stackoverflow.com/questions/14141150
复制相似问题