【问题标题】:add eventViewController not showing anything添加 eventViewController 不显示任何内容
【发布时间】:2013-02-08 00:54:42
【问题描述】:

我目前正在处理应用程序的议程部分。我设法展示了我的所有活动,并从中找到了详细信息并进行了编辑。但是当我想添加一个事件时,它会显示一个空视图。我应该提到我的日历有一个自定义数据源。

要编辑事件,我只需在 ViewController 中执行此操作。

  EKEventViewController *vc = [[EKEventViewController alloc] init];
        vc.event = [dataSource eventAtIndexPath:indexPath];
        vc.allowsEditing = YES;
       [calendar.navigationController pushViewController:vc animated:YES];

这向我展示了具有正确事件的正确 VC。 现在这是我添加事件的代码。

EKEventEditViewController *addController = [[EKEventEditViewController alloc]init];

    // set the addController's event store to the current event store.
    addController.eventStore = self.eventStore;
    addController.editing = YES;
    // present EventsAddViewController as a modal view controller
    [self presentModalViewController:addController animated:YES];

    addController.editViewDelegate = dataSource;

但是当我运行它时,我得到一个空的 viewController。有人可以帮我解决这个问题吗?

亲切的问候。

【问题讨论】:

  • 你确定 self.eventStore 不是 nil 吗?
  • 也许您应该在呈现视图之前设置委托。只是一个想法。

标签: iphone ios objective-c ipad eventkit


【解决方案1】:

我猜你没有创建事件存储。我查看了 Apple 的演示程序,我可以消除除 4 行之外的所有内容,并且仍然可以显示编辑控制器:

#import <EventKitUI/EventKitUI.h>

@implementation ViewController


-(IBAction)doStuff:(id)sender {
    EKEventEditViewController *addController = [[EKEventEditViewController alloc]init];
    addController.eventStore = [[EKEventStore alloc] init]; 
    [self presentViewController:addController animated:YES completion:nil];

}

【讨论】:

  • 你是对的!初始化事件存储后它起作用了。但是当我添加一个事件时,该事件被添加了两次。有什么帮助吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-29
  • 2020-11-10
  • 2012-04-12
  • 2019-11-11
  • 2017-09-25
  • 2012-08-02
相关资源
最近更新 更多