Dan*_*Dan 5 objective-c modalviewcontroller ios
如何更改表单工作模式视图控制器的位置?
默认情况下,它位于屏幕的中心,我想偏移表单位置,以便当我显示键盘时,它不会与表单工作窗口重叠.
这可能吗?
您可以修改父控制器的框架.就像是:
CGRect frame = self.parentViewController.view.frame;
frame.origin.x -= 50;
frame.origin.y -= 50;
self.parentViewController.view.frame = frame;
Run Code Online (Sandbox Code Playgroud)
这会将模态视图的位置移动(-50,-50)
如果您使用 UIViewController 并使用presentModalViewController 呈现它,那么您必须接受您指定的类型(表单)的默认行为。每次都会落在中心的正方形上。所以按照你的做法,这是不可能的。
然而,创建自己的视图并通过动画进出(并执行一些工作来变暗/禁用位于下面的视图上的交互)来呈现它是相对简单的,让您能够将其放置在您想要的任何地方。
至于容纳键盘,我想我会考虑将表单视图中呈现的子视图滚动到适当的偏移量。
希望这有帮助。