调整TextView的大小

时间:2013-05-01 15:08:39

标签: iphone ios objective-c xcode

在我的iphone应用程序中,我有一个TextField输入名称,TextView输入描述。在我的viewDidLoad方法中,如果iPhone 5的显示为4英寸,我将使TextView更大。

if (IS_IPHONE_5) {
        CGRect frameRect = self.eventDetails.frame;
        frameRect.size.height = 160;
        self.eventDetails.frame = frameRect;
}

这在视图加载时工作正常,但如果我先在TextField上输入然后触摸TextView,TextView会缩小到原始大小。如果我首先进入TextView,它不会缩小,只有当我进入TextField然后进入TextView时。有什么方法可以保持身高160?

谢谢, 千电子伏。

2 个答案:

答案 0 :(得分:0)

尝试添加autoResizingMask,当视图边界发生变化时,会自动更改,例如方向。

[self.eventDetails setAutoresizingMask:UIViewAutoresizingFlexibleWidth];

其他价值观: UIViewAutoresizingFlexibleWidth
UIViewAutoresizingFlexibleRightMargin
UIViewAutoresizingFlexibleTopMargin
UIViewAutoresizingFlexibleHeight
UIViewAutoresizingFlexibleBottomMargin

答案 1 :(得分:0)

从iOS开发论坛得到答案。

viewDidLoad方法不应该用于设置帧。尝试将代码移动到viewDidLayoutSubviews方法。