UITextView没有为iPhone调整大小

时间:2013-03-23 21:21:23

标签: iphone ios objective-c uitextview

我已经发布了一款适用于iPad的应用程序,我正在努力使它具有普及性。我有一个UITextView,我想调整大小以适应其内容。 TextView通过故事板创建,并通过IBOutlet引用。我阅读了这个问题How do I size a UITextView to its content?的答案,并使用代码来调整TextView的大小。这段代码在iPad上完美运行,但是当我在iPhone上运行它时,它不会调整大小。我已经在这个问题上工作了好几个小时,它一直在杀我。

//self.speciesDescription is the TextView in Question here:

//set the text
self.speciesDescription.text=[self.modal getdescriptionForSpecies:self.plantDisplayed];

//call the method below
[self resizeTextView:self.speciesDescription];

//resizes the text view to fit the text
-(void)resizeTextView:(UITextView *)textView {
    CGRect contentFrame=textView.frame;
    contentFrame.size.height=textView.contentSize.height;
    textView.frame=contentFrame;
}

如果我在尝试调整大小之前在TextView上调用initWithFrame:它工作正常,但如果我不必这样做,它会节省我的时间和代码。 StoryBoard不会自动调用initWithFrame吗?

编辑:我今天运行了一些测试,并意识到textView的contentSize属性的宽度始终为0,高度超过16000.任何想法可能都是为什么?

1 个答案:

答案 0 :(得分:0)

故事板使用initWithCoder:构造函数初始化其视图,而不是initWithFrame:。如果您进行了一些自定义初始化,请确保在initWithCoder:方法中执行此操作。