我是iOS開發人員的初學者,並且無法自動調整UITextView的大小。自動調整UITextView的大小
我創建了一個主 - 細節應用程序。在我的DetailViewController.xib上,我添加了一個ScrollView,它包含標題,圖像的Label以及此圖像下的TextView,以便將用戶發佈的描述放入。
問題是,描述取決於我的WebService返回的內容,所以我需要它自動調整大小。
這裏是我的代碼:
- (void)configureView
{
...
self.detailDescriptionTextView.text = [self.detailItem valueForKey:@"adDescription"];
CGRect frame = self.detailDescriptionTextView.frame;
frame.size.height = self.detailDescriptionTextView.contentSize.height;
self.detailDescriptionTextView.frame = frame;
)
的問題是,TextView的正確獲取內容,但它不調整所有..我看了一會兒答案,回答最多的是什麼我嘗試...
感謝您的幫助。
編輯:我意識到了一些東西。爲了在描述下放置一些元素,我在Interface Builder中爲描述放置了一個非常小的TextView,這是一個問題嗎?如果是這樣,我怎麼能把這個TextView下的其他元素,因爲在接口生成器沒有更多的空間不會?
編輯2:我終於成功了。看來問題是我通過Interface Builder創建了TextView。通過編程創建它,它完美地工作。這裏是我的代碼,如果它可以幫助某人:
UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(20, 195, 280, 10)];
textView.text = [self.detailItem valueForKey:@"adDescription"];
textView.font = [UIFont fontWithName:@"Hevlatica" size:14];
[self.scrollView addSubview:textView];
CGRect descriptionFrame = textView.frame;
descriptionFrame.size.height = textView.contentSize.height;
textView.frame = descriptionFrame;
感謝您的幫助。
嗨, 感謝您回答如此之快,但不幸的是它不起作用:-( 在第一個解決方案中,我嘗試用NSString * content = [self.detailDescriptionTextView.text]替換NSString *內容;並且嘗試使用200(for yourWidth)和999(對於MAX_HEIGHT)它不會改變任何東西 第二種解決方案與我的理解完全相同,如果我理解您的意思:S – 2013-03-15 13:08:04
是self.detailDescriptionTextView.contentSize.height &self.detailDescriptionTextView.frame.size.height是否一樣? – 2013-03-15 13:09:13
我試過了: NSLog(@「contentSize:%f」,self.detailDescriptionTextView.contentSize.height); NSLog(@「frame:%f」,self .detailDescriptionTextView.frame.size.height); 第一個日誌返回178.000000,第二個178.000000也是 – 2013-03-15 13:13:33