我希望像上面的图片一样呈现UINavigationController
,我使用
nvc.modalPresentationStyle = UIModalPresentationFormSheet;
但我不能改变控制器的大小。
这就是我的做法:
UIViewController *vc = [[UIViewController alloc] init];
vc.view.backgroundColor = [UIColor grayColor];
UINavigationController *nvc = [[UINavigationController alloc] initWithRootViewController:vc];
nvc.modalPresentationStyle = UIModalPresentationFormSheet;
nvc.view.frame = CGRectInset(self.view.bounds, 20, 20);
[self presentViewController:nvc animated:YES completion:nil];
但是现在的viewController仍然全屏。
答案 0 :(得分:0)
您可以使用preferredContentSize
,如下所示:
nvc.modalPresentationStyle = UIModalPresentationFormSheet;
nvc.preferredContentSize = CGSizeMake(width, height);
喜欢,
nvc.preferredContentSize = CGSizeMake(300, 600);
<强> OR 强>
在呈现的viewController&#39; viewDidLoad
方法中写下代码:
self.preferredContentSize = CGSizeMake(width, height);
<强> 编辑: 强>