2013-05-11 80 views
0

我需要包含(標題,圖像和詳細信息)的視圖,詳細信息是關於textview的。在可滾動對象中組合uitextview,uilabel和uiimageview ios

我需要的是,允許滾動到所有視圖,而不僅僅是texview。 在我的應用程序,如果我禁用滾動,TextView是被切斷,因爲身高不是動態:

enter image description here

在我的代碼

,我把這樣的:

CGRect frame = self.detailTextView.frame; 
    frame.size.height = self.detailTextView.contentSize.height; 
    self.detailTextView.frame = frame; 
    [self.detailTextView sizeToFit]; 
    self.detailTextView.text = [[fastResults objectAtIndex:0] objectForKey:@"content"]; 

這fastResults是一個包含數據的字典。

我需要像例如BBC應用的視圖:

enter image description here

SO,我需要讓TextView的高度是動態的並且讓所有的視圖是可滾動在一起。 注意:所有這些元素都處於滾動視圖中。

這是我的界面生成器:

enter image description here

謝謝你的幫助;

回答

0

首先,您必須在調整文本大小之前在文本視圖上設置文本。所以,你應該有類似:

self.detailTextView.text = [[fastResults objectAtIndex:0] objectForKey:@"content"]; 
    CGRect frame = self.detailTextView.frame; 
    frame.size.height = self.detailTextView.contentSize.height; 
    self.detailTextView.frame = frame; 
// [self.detailTextView sizeToFit]; you don't need this anymore 

//after you resized the self.details.textView you have to change the scrollview content size 

yourScrollView.contentSize = CGSizeMake(yourScrollView.contentSize.width, 
             yourImageHeight + yourTitleHeight + self.detailsTextView.frame.size.height); 
+0

還是文字被切斷了,我應該在故事板檢查器中編輯一些東西嗎? – CarinaM 2013-05-11 10:04:16

+0

你在使用autoLayout嗎? – danypata 2013-05-11 10:08:22

+0

我已經附加了我的界面生成器的截圖,在視圖檢查器元素框架矩形被選中,你是什麼意思的自動佈局? – CarinaM 2013-05-11 10:13:51

0

你可以先在你的TextView中(see this)是把NSString的高度,然後設置的TextView作爲字符串的計算高度的高度。
也許,如果textview的高度大於scrollview contentSize的高度,則還需要將scrollview的contentSize的高度調整爲textview框架的高度。然後禁用textview上的滾動。