2

我有一个名为 _containerView 的 UIView,在这个 UIView 中我有一个名为 _codeTextView 的自定义 UITextView。加载应用程序时,这些视图占据整个屏幕,但是,当键盘出现时,我希望屏幕调整大小。

当键盘出现时,我必须遵循以下方法:

- (void)keyboardAppears:(NSNotification *)notification
{
    _containerView.frame = CGRectMake(0, 0, 320, 216.0f);
    _codeTextView.frame = CGRectMake(0, 30, 290, 216.0f);
}

containerView 可以正确调整大小,但是其中的 _codeTextView 没有调整大小,我真的不知道为什么它没有调整大小。我已经尝试过更改各种选项,这让我发疯:(

有人可以帮我吗?

提前致谢!

4

1 回答 1

8

我刚刚使用您描述的场景创建了一个项目。setFrame 适用于禁用自动布局的所有视图,但不适用于启用自动布局的视图。

您是否为该视图控制器启用了自动布局?setFrame 不适用于自动布局。您必须使用约束以编程方式调整您的视图。(答案来自:我可以在同一个视图上使用 setFrame 和 autolayout 吗?

你可以在这里找到一些帮助:http: //nszombie.com/2010/12/08/ConstraintBasedLayout.html

于 2013-01-02T22:11:28.750 回答