iOS--日历事件的获取和添加
日历添加事件
EKEventStore* eventStore = [[EKEventStore alloc] init];//获取日历类
EKEvent *event = [EKEvent eventWithEventStore:eventStore];//日历类事件
NSDate *startDate = [[NSDate alloc] init];
NSDate *endDate = [[NSDate alloc] init];
event.title = @"New event test";
event.startDate = startDate;//开始日期
event.endDate = endDate;//结束日期
event.location = @"浙江";//位置
event.allDay = YES;//是否是全天
[event setCalendar:[eventStore defaultCalendarForNewEvents]];
[event addAlarm:[EKAlarm alarmWithRelativeOffset:-30.0f]];
[event addAlarm:[EKAlarm alarmWithRelativeOffset:-15.0f]];
__block NSError *err;
//ios 6之后
if([eventStore respondsToSelector:@selector(requestAccessToEntityType:completion:)]) {
[eventStore requestAccessToEntityType:EKEntityTypeEvent
completion:^(BOOL granted, NSError *error) {
dispatch_async(dispatch_get_main_queue(), ^{
if (granted) {
[eventStore saveEvent:event span:EKSpanFutureEvents commit:YES error:&err];
} else {
NSLog(@"不允许访问日历");
}
});
}];
} else {
//ios4,5
[eventStore saveEvent:event span:EKSpanThisEvent error:&err];
}
获取日历中的事件
EKEventStore* eventStore = [[EKEventStore alloc] init];
NSDate* ssdate = [NSDate dateWithTimeIntervalSinceNow:-3600*24*90];//事件段,开始时间
NSDate* ssend = [NSDate dateWithTimeIntervalSinceNow:3600*24*90];//结束时间,取中间
NSPredicate* predicate = [eventStore predicateForEventsWithStartDate:ssdate
endDate:ssend
calendars:nil];//谓语获取,一种搜索方法
NSArray* events = [eventStore eventsMatchingPredicate:predicate];//数组里面就是时间段中的EKEvent事件数组
for (EKEvent *event in events) {
NSLog(@"=================================================================");
NSLog(@"%@", event.title);
NSLog(@"%@", event.startDate);
NSLog(@"=================================================================");
}
iOS--日历事件的获取和添加的更多相关文章
- Swift - 使用EventKit获取系统日历事件,添加事件
通过EventKit可以对iOS日历事件进行读取,添加等操作.但网上找到的都是使用Objective-C来编写的. 下面提供一个Swift版的样例,演示如何添加一个事件以及获取所有的事件列表. 1 2 ...
- ios中将事件添加到系统日历
- (void)saveEvent:(id)sender { //事件市场 EKEventStore *eventStore = [[EKEventStore alloc] init]; //6.0及 ...
- 设置代码ios 6添加日历事件No calendar has been set.错误
查了好多资料,发明还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧! 在iOS 6做日历事件添加时,来来回回报错,No calendar has been set ...
- ios中将事件同步到系统日历
//获取日历事件 EKEventStore* eventStore = [[EKEventStorealloc] init]; NSDate* ssdate = [NSDatedateWithTime ...
- 整理:iOS 短信与电话事件的获取
整理:iOS 短信与电话事件的获取 background information: Core Telephony iOS 4.0 的官方 API 裡頭,多了一個叫做 Core Telephony ...
- 调用Android自带日历功能(日历列表单、添加一个日历事件)
调用Android自带日历功能 觉得这篇文章不错,转载过来. 转载:http://blog.csdn.net/djy1992/article/details/9948393 Android手机配备有 ...
- DOM2级事件对象、添加事件、阻止默认事件、阻止冒泡事件、获取事件对象目标的兼容处理
事件对象——兼容处理 /* * 功能: 事件对象兼容 * 参数: 表示常规浏览器的事件对象e */ function getEvent(e) { // 如果存在e存在,直接返回,否则返回window. ...
- 【Java UI】HarmonyOS添加日历事件
参考资料 CalendarDataHelper Events Reminders api讲解 添加权限 在config.json添加权限代码如下 "reqPermissions" ...
- 史上最详细的iOS之事件的传递和响应机制
前言: 按照时间顺序,事件的生命周期是这样的: 事件的产生和传递(事件如何从父控件传递到子控件并寻找到最合适的view.寻找最合适的view的底层实现.拦截事件的处理)->找到最合适的view后 ...
随机推荐
- python核心编程2第二章课后练习
2-1 变量, print 和字符串格式化运算符.启动交互式解释器.给一些变量赋值(字符串,数值等等)并通过输入变量名显示它们的值.再用 print 语句做同样的事.这二者有何区别? 也尝试着使用字符 ...
- Android应用自杀和干掉其它进程
// 自杀(这种方式只能杀掉自己的进程,其它进程无法杀死) int pid = Process.myPid(); android.os.Process.killProcess(pid); // 或者 ...
- insert时出现主键冲突的处理方法【转载】
原文出处:http://hi.baidu.com/ytjwt/blog/item/1ccc2c26022b0608908f9d8c.html 使用"insert into"语句进行 ...
- Match & Catch
Codeforces Round #244 (Div. 2) D:http://codeforces.com/contest/427/problem/D 题意:给你两个串,让你找一个最小的串,并且这个 ...
- iOS,OC,图片相似度比较,图片指纹
上周,正在忙,突然有个同学找我帮忙,说有个需求:图片相似度比较. 网上搜了一下,感觉不是很难,就写了下,这里分享给需要的小伙伴. 首先,本次采用的是OpenCV,图片哈希值: 先说一下基本思路: 1. ...
- 使用Aspose.Word的基础知识整理
var doc = new Document(path); doc.AcceptAllRevisions();//接受所有修订
- div 背景色设置_DIV背景颜色设置
DIV 背景色设置篇-div背景颜色设置篇 一.div标签内直接设置背景颜色 - TOP <div style="background:#000; color:#FFF&quo ...
- python手记(32)
#!/usr/bin/env python #-*- coding: utf-8 -*- import cv2 import numpy as np fn="test2.jpg" ...
- 14.8.2 Role of the .frm File for InnoDB Tables InnoDB 表得到 .frm文件的作用
14.8.2 Role of the .frm File for InnoDB Tables InnoDB 表得到 .frm文件的作用 Vsftp:/data01/mysql/zjzc# ls -lt ...
- random随机函数
SQL> select * from (select ename,job from emp order by dbms_random.value() ) where rownum <5 2 ...