我使用了MBCalendarKit。这是tableView方法- (void)calendarView:(CKCalendarView *)CalendarView didSelectEvent:(CKCalendarEvent *)event
上显示的事件。此方法与- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
的作用相同。我想在tableView单元格单击事件上调用方法didSelectEvent
。如何在单击单元格上移动到另一个视图控制器?并传递单元格数组。这怎么可能?请帮忙。谢谢
- (void)calendarView:(CKCalendarView *)CalendarView didSelectEvent:(CKCalendarEvent *)event
{
// A row is selected in the events table. (Use to push a detail view or whatever.)
CalendarViewController*destVC = [[CalendarViewController alloc] init];
destVC.pure=arr;
[self presentViewController:destVC animated:YES completion:nil];
}
答案 0 :(得分:0)
在tableview didSelectRowAtIndexPath
方法中: -
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
打电话给你的功能: -
[self didSelectEvent:..
同样要移动到另一个视图控制器,在tableView的相同didSelectRowAtIndexPath方法中使用segue如下: -
[self performSegueWithIdentifier:@"segueName" sender:self];
最后,要传递单元格数组,请使用prepareForSegue: -
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"segueName"])
{
DestViewController *dest = segue.destinationViewController;
dest.passedArr = Arr;
}
}
注意: - “segueName”需要在Storyboard中定义
答案 1 :(得分:0)
如果您正在CKCalendarViewDelegate
内部实施CKCalenderViewController
或子类calendarView:didSelectEvent:
,则可以将新视图控制器推送到导航堆栈,或者自己展示presentViewController:animated:completion:
auth.ts
。 1}}。
如果要将事件传递给第二个视图控制器,请在显示或推送视图控制器之前将其指定为属性。
披露:我是MBCalendarKit的作者。