加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iOS – 如何在Objective C中向kal库添加事件?

发布时间:2020-12-14 19:08:10 所属栏目:百科 来源:网络整理
导读:我在项目需要日历视图中处理事件,我尝试了很多库,但最后我决定使用 kal library作为其添加事件的能力 Calendar.h #import "Kal.h"#import "NSDate+Convenience.h"#import "EventKitDataSource.h"@interface Calendar : UIViewControllerWebService_Delegate,
我在项目需要日历视图中处理事件,我尝试了很多库,但最后我决定使用 kal library作为其添加事件的能力

Calendar.h

#import "Kal.h"
#import "NSDate+Convenience.h"
#import "EventKitDataSource.h"


@interface Calendar : UIViewController<WebService_Delegate,UITableViewDelegate >
{


    KalViewController *kal;
    id dataSource;
}

Calendar.m

- (void)viewDidLoad
{
    [super viewDidLoad];



    self.title = @"Caledar";
    kal = [[KalViewController alloc]initWithSelectionMode:KalSelectionModeSingle];
    kal.selectedDate = [NSDate dateStartOfDay:[NSDate date]];
     kal.delegate = self;


    kal.view.frame = CGRectMake(0,65,kal.view.frame.size.width,kal.view.frame.size.height);

    [kal showAndSelectDate:[NSDate date]];
    //navController = [[UINavigationController alloc]initWithRootViewController:kal];
   // [self.view addSubview:navController.view];
    [self initVariable];
    [self getEvents];


    dataSource = [[EventKitDataSource alloc] init];
    kal.dataSource = dataSource;



   [self.view addSubview:kal.view];

}


- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

    // Display a details screen for the selected event/row.
    EKEventViewController *vc = [[EKEventViewController alloc] init];

    vc.event = [dataSource eventAtIndexPath:indexPath];

    //[vc setEvent:[events_array objectAtIndex:indexPath.row]];
    vc.allowsEditing = NO;
    [navController pushViewController:vc animated:YES];
}

如何将数据传递给dataSource以显示它

这里看起来如何

我需要将事件列表设置到我的事件列表中,我将事件重复,从我的日历中读取

谢谢

解决方法

您需要在对象中实现KalDataSource协议,并将该对象设置为kal对象的数据源.该协议可在此处找到 https://github.com/klazuka/Kal/blob/master/src/KalDataSource.h

将KalDataSource协议添加到头文件中
< WebService_Delegate,UITableViewDelegate,KalDataSource>

在Calendar对象集的init方法中
kal.datasource = self

在对象中实现KalDataSource方法

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读