ios - 以模态方式呈现 EKCalendarChooser

标签 ios

<分区>

我试图在我的应用程序中将新的 EKCalendarChooser 作为模态视图呈现。我正在使用以下代码进行操作:

EKCalendarChooser *calendarChooser = [[EKCalendarChooser alloc] 
    initWithSelectionStyle:EKCalendarChooserSelectionStyleMultiple 
     displayStyle:EKCalendarChooserDisplayAllCalendars
     eventStore:self.ekDataSource.eventStore];


calendarChooser.showsDoneButton = YES;
calendarChooser.showsCancelButton = NO;
calendarChooser.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
calendarChooser.delegate = self;

[[self navigationController] presentViewController:calendarChooser animated:YES completion:nil];

我遇到的问题是,当显示 View 时,它缺少完成按钮。但是,如果我使用以下代码显示 View :

[[self navigationController] pushViewController:calendarChooser animated:YES];

它工作得很好。显示完成按钮。完成按钮不应该与 presentViewController 调用一起显示吗?

在此先感谢您的帮助!

下午

最佳答案

如果您当前的 View Controller 位于导航 Controller 内,那么您应该继续使用该导航 Controller ,除非您真的需要更多屏幕空间。然后,您应该使用动画以模态方式呈现新的 View Controller ,告诉用户他们将离开导航 Controller 的上下文。

[self.navigationController pushViewControllerAnimated:how];

关于ios - 以模态方式呈现 EKCalendarChooser,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7909971/

上一篇:objective-c - ios 将 block 用于 Assets 库

下一篇:iphone - 如何用 null 初始化方法参数

相关文章:

iphone - 如何使用 Facebook SDK 发布到用户墙上

ios - 使用 segue 中的参数调用函数

ios - 在没有子类化的情况下为 InAppSettingsKit View Controller 设置委托(delegate)的正确方法是什么

ios - 无法在 iOS 中为 UITableView 设置辅助功能标识符

ios - 有没有办法利用自定义动画的 CoreAnimation 完成曲线数学?

ios - 获取推特好友列表?

ios - Facebook for swift 4.2 实现错误

ios - 快速图像旋转 360 度

ios - 模拟器上的 Xcode 错误 : MGIsDeviceOneOfType is not supported on this platform

ios - 将表格单元格委托(delegate)给其他表格 View