- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在尝试调用一种在创建事件时获取日历的方法。我确定这种方法是为了使用 calendarWithIdentifier 获取
的 ID这是我创建事件和调用获取日历的方法的代码。我需要调用一个特定的日历
var store = EKEventStore()
func applicationDidFinishLaunching(aNotification: NSNotification) {
// ask for permission
// call methods
}
// Create new calendar
func createCalendar() -> EKCalendar? {
var calendar = EKCalendar(forEntityType: EKEntityTypeEvent, eventStore: self.store)
calendar.title = "Calendarname"
// ...
return calendar
}
func createEvent(){
var newEvent : EKEvent = EKEvent(eventStore: store)
var error : NSError? = nil
newEvent.title = "day off"
newEvent.location = "London"
var startDate : String = "2015-07-16";
var dateFmt1 = NSDateFormatter()
dateFmt1.dateFormat = "yyyy-MM-dd"
var date1:NSDate = dateFmt1.dateFromString(startDate)!;
var endDate : String = "2015-07-17";
var dateFmt2 = NSDateFormatter()
dateFmt2.dateFormat = "yyyy-MM-dd"
var date2:NSDate = dateFmt2.dateFromString(endDate)!;
newEvent.startDate = date1
newEvent.endDate = date2
newEvent.notes = "testing the event"
newEvent.calendar = getCalendar()
self.store.saveEvent(newEvent, span: EKSpanThisEvent, commit: true, error: nil)
}
func getCalendar() -> EKCalendar? {
// ...
}
我知道了
func calendarWithIdentifier(_ identifier: String!) -> EKCalendar!
来自 Apple 的 EventKit 文档,用于通过 id 返回日历。所以我使用日历的名称(“Calendarname”)作为参数,但这似乎不对。它返回零。
谁能帮我正确获取日历?谢谢
最佳答案
calendarWithIdentifier
方法需要一个 UID 而不是一个可读的名称。您需要像这样从您的 store
中检索它们:
var calUid:String = "?"
for cal in store.calendarsForEntityType(EKEntityTypeEvent) {
if cal.title == "Calendarname" { calUid = cal.calendarIdentifier }
}
以后你可以像这样使用它
calendar = store.calendarWithIdentifier(calUid)
关于ios - 返回带有日历 WithIdentifier 的单个日历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30969032/
根据官方文档,有两种方法可以从tableView的队列中获取可重用的cell。一个是 dequeueReusableCell(withIdentifier:for:),另一个是 dequeueReus
长话短说,我的 segue 无法执行到我已经创建的下一个 Controller 。很多帮助将不胜感激。 override func viewDidLoad() { super.
我正在尝试调用一种在创建事件时获取日历的方法。我确定这种方法是为了使用 calendarWithIdentifier 获取 的 ID 这是我创建事件和调用获取日历的方法的代码。我需要调用一个特定的日历
我的自定义导航栏中有一个菜单表格 View 。如果我单击一个单元格,它应该将我带到另一个 View Controller 。但是当我点击它时我的应用程序崩溃了。 func tableView(_ ta
我有一个 tableView ,其中包含使用继承的单元格。有一个共同的祖先,然后有几种具体的实现。公共(public)类不会重写 init(style:reuseIdentifier:) ,而是定义自
swift 3.0 根据我在这里的发现,UIStoryboard 总是在函数 instantiateViewController(withIdentifier:) 中返回非可选实例。 open cla
这是 Xcode 8.2 的屏幕截图: 如果该函数不存在,现在如何将标识符添加到 View Controller ? 最佳答案 改用instantiateViewController(withIden
这个问题已经有答案了: Catching NSException in Swift (6 个回答) 已关闭 3 年前。 我有如下代码: if let vc = NSStoryboard.main?.i
我必须显示几个不同的单元格。为此,我调用了 tableView(_:cellForRowAt:),并在该方法中为 UITableViceCell 的不同类使用了两个不同的 ID。 这是一个简单的代码:
我有一个 viewController 来处理对 oAuth API 的用户身份验证。如果 user.defaults 中有存储的 token ,则此 block 运行 FRDStravaClient
为什么我们需要在使用 UIStoryboard 的 instantiateViewController(withIdentifier:) 方法实例化 View Controller 之后使用关键字进行
如果我的应用程序是通过 Firebase 发送的通知打开的,我目前正在尝试立即对新的 ViewController 执行 segue。 我正在尝试使用代码 self.performSegue(with
在 dequeueReusableCell(withIdentifier: for:) 步骤中,我无法将我的表格 View 单元格转换为自定义表格 View 单元格。 我的代码: override f
Xcode 7.3 has deprecated XCPlaygroundPage.currentPage.captureValue(_:withIdentifier:)。它的前身 XCPCaptur
在 中测试我的应用程序Xcode 11(测试版)为 iOS-13(测试版)更新,当我尝试从 Storyboard实例化 viewController 时,我崩溃了。 在以前的版本中,使用以下代码可以正
到目前为止,我遇到的大多数 UIPageViewController 教程都会在滑动到所需页面时动态创建 UIViewController。 未优化的 UIPageViewController 示例
我试图理解两个 View Controller 之间的通信。 在没有 segue 的情况下传递数据时,我看到了两种创建目标 Controller 实例的方法。 第一个是storyboard?.inst
从sb.instantiateViewController(withIdentifier:)创建一个vc10,不能使用它的属性甚至将它的类型转换为ViewController10 。 下面是我的代码:
当我尝试在我的“添加”表单中打开一个表项进行更新时,我收到了这条后续消息。 Terminating app due to uncaught exception 'NSInvalidArgumentEx
我正在尝试做的事情: 检查条件,如果条件为真,则执行 segue普通的。如果条件为假,调用 shouldPerformSegue 方法并返回 false 以取消 segue。 我是如何尝试做到这一点的
我是一名优秀的程序员,十分优秀!