objective-c - 具有主从 Controller 的模态视图 Controller 大小

标签 objective-c ios cocoa-touch ipad uikit

我的应用程序有一个分离的主从界面:当用户点击屏幕细节侧的特定按钮时,我使用 UIModalTransitionStyleFlipHorizo​​ntal modalTransitionStyle 这样我可以仅以模态方式呈现一个新 Controller ,并让它看起来好像详细信息面板已“翻转”到新界面。

虽然这在 iPhone 上运行良好,但当我在 iPad 上尝试时,新的模态 Controller 从屏幕的细节一侧翻转,但在动画结束时,它覆盖了整个屏幕。

如何使 Controller 仅在屏幕的详细信息一侧翻转?

最佳答案

如果您还没有弄清楚这一点,那么您已经完成了大部分工作。您需要为“当前上下文”定义模态视图的表示上下文,以便它仅在详细 View 中运行,而不是在整个父 View 中运行。

执行此操作的最简单方法是使用 segue 在 Storyboard中设置 View 。在 IB 中,创建新的 View Controller ,添加一个 segue 并通过给它命名为“flipper”来编辑 segue 行,将其设置为模态,将其设置为翻转并将其呈现设置为“当前上下文”。

一旦设置了这些属性,您就可以继续到 View Controller - 但是从详细 View Controller 启动它,如下所示:

[self performSegueWithIdentifier:@"flipper" sender:self];

如果您需要在代码中进行转换,它看起来像这样:

UIViewController *abc = [self.storyboard instantiateViewControllerWithIdentifier:@"flipper"];
[abc setModalPresentationStyle:UIModalPresentationCurrentContext];
[abc setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];
[self presentViewController:abc animated:YES completion:nil];

祝你好运。

关于objective-c - 具有主从 Controller 的模态视图 Controller 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12591103/

相关文章:

ios - 是否可以在 UISearchBar 键盘中添加键盘预测选项

ios - 启用允许任意加载应用程序传输安全设置在 XCODE 9.2 和 iOS 11.2 中不起作用

ios - 带有标题的 TableView 在触底之前反弹

ios - UITableViewCell 的 subview 没有出现

ios - MPMoviePlayerController.view 未从 super View 中删除

iphone - iOS 4 应用程序在 3.1.3 : Symbol not found: __NSConcreteStackBlock 上启动时崩溃

iphone - iPhone中图像的加密和解密算法?

ios - 将选择器 View 设置为加载时的值

ios - 将 16 位颜色范围内的值转换为 UIColor

iOS(swift) 测试应用内计费