【问题标题】:EventKit RemindersEventKit 提醒
【发布时间】:2013-01-03 14:48:58
【问题描述】:

我正在努力学习 EventKit 提醒的基础知识。我正在尝试在这里重新创建教程:http://www.techotopia.com/index.php/Using_iOS_6_Event_Kit_to_Create_Date_and_Location_Based_Reminders

但是当我尝试构建项目时,我的 .m 文件中出现“缺少方法声明的上下文”的错误 在 IBAction 和 CreateReminder 中。我试图在这里寻求建议,但似乎仍然无法弄清楚我做错了什么。不得不说这些教程有什么用,如果它们总是遗漏一些阻止它构建的基本信息。如果有人可以提供帮助,我将不胜感激。

#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);

        }

【问题讨论】:

    标签: eventkit reminders


    【解决方案1】:

    下面的部分看起来应该在 .h 文件中,而不是 .m 文件中。在 .m 的 @interface 部分中声明的属性本质上是私有的,并且只能在 .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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多