5

我正在尝试展示一个视图控制器,其展示样式设置为表单。但是,当视图控制器出现时,它位于屏幕的右侧,而不是中心。我不确定为什么会发生这种情况,或者我应该怎么做。所有这些坐标都是正确的!

CGSize size = CGSizeMake(650, 550);

//custom init for ViewController so I can position stuff correctly
ViewController *vc = [[ViewController alloc] initWithSize:size];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc];

nav.modalPresentationStyle = UIModalPresentationFormSheet;
nav.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;

[self presentModalViewController:nav animated:YES];

nav.view.superview.frame = CGRectMake(0, 0, size.width, size.height);
nav.view.superview.center = self.view.center;

在此处输入图像描述

4

1 回答 1

1

似乎每当我删除最后两行时,我都会得到我认为是您正在寻找的行为。

CGSize size = CGSizeMake(650, 550);

//custom init for ViewController so I can position stuff correctly
ViewController *vc = [[ViewController alloc] initWithSize:size];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc];

nav.modalPresentationStyle = UIModalPresentationFormSheet;
nav.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;

[self presentModalViewController:nav animated:YES];

我不确定你到底想用这两条线做什么,但没有它们,视图就会居中。

于 2013-03-17T05:12:09.790 回答