PresentModalViewController一些框架(PresentModalViewCon

2019-09-18 14:50发布

我想提出一个modalViewController具有小帧,并在视图的中心。

那可能吗?

即使我设置一些帧到ViewController对象,presentModelViewController正在显示在全屏模式图。

另外,我已经使用modalPresentationStyle作为UIModalPresentationFormSheet 。 我想有架甚至比这更小。

怎么做?

Answer 1:

可以不存在具有较小的帧大小模态的视图控制器。

你可以尝试做的是设置你的模式视图控制器透明的背景,然后添加更小尺寸的观点在中心(或者任何你想它已经看到的)。



Answer 2:

呈现模态视图将覆盖整个来看,如果你不希望覆盖整个视图,那么你应该自己创建视图,将其添加到当前视图作为一个子视图,然后动画过渡自己。 它不会是一个单独的viewController,因为你还是原来的观点的范围内运行。



Answer 3:

是。 有可能的。 请按照以下步骤进行:

- (void)viewDidLoad {
     [super viewDidLoad];
     [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShown:) name:UIKeyboardWillShowNotification object:nil];
     CGRect rect = CGRectMake(242, 60, 540, 312);
     self.controller.view.superview.frame = [self.view convertRect:rect toView:self.controller.view.superview.superview];
}

- (void)keyboardWillShown:(NSNotification*)aNotification {
     CGRect rect = CGRectMake(242, 60, 540, 312);
     self.controller.view.superview.frame = [self.view convertRect:rect toView:self.controller.view.superview.superview];
}

你有你的控制器设置(只是viewDidLoad方法结束之前)之后设置当前控制器的框架。

在这里,我认为本iPad的视图控制器帧。



文章来源: PresentModalViewController with some frame