1

如何更改模态对话框的大小?为什么这不起作用?

SlingDialogViewController *slingDialog = [[SlingDialogViewController alloc] init];

    slingDialog.modalPresentationStyle = UIModalPresentationFormSheet;
    slingDialog.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    slingDialog.view.superview.frame = CGRectMake(0, 0, 900, 700);
    [self presentModalViewController:slingDialog animated:YES];
4

2 回答 2

1

做这个:

SlingDialogViewController *slingDialog = [[SlingDialogViewController alloc] init];

slingDialog.modalPresentationStyle = UIModalPresentationFormSheet;
slingDialog.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;

[self presentViewController:navController animated:YES completion:nil];

slingDialog.view.superview.frame = CGRectMake(0, 0, 900, 700);
slingDialog.view.superview.center = self.view.center;

presentViewController:animated:completion至少从我的经验来看,首先打电话很重要。

于 2013-04-12T11:54:26.623 回答
0

iOS 中的模态控制器具有固定大小。我不建议尝试更改它们,它永远不会可靠地工作。

一种解决方法是自己实现它。模态(显示)控制器是一个非常简单的功能:

  1. 与您的呈现控制器重叠的视图,因此无法单击它(并且它使内容变暗以使它们看起来像背景)

  2. 添加到您的控制器的子视图控制器(及其视图)。

于 2013-04-12T11:49:19.210 回答