2012-12-10 78 views
1

我是notes.app喜歡的應用程序。我設置UITextView的contentInset爲隱藏的UItextView文本

myTextView.contentInset = UIEdgeInsetsMake(0, 25, 0, -25); 
myTextView.contentSize = CGSizeMake(295, myTextView.contentSize.height); 

但這似乎並不像我預期的那樣工作。兩個字符被隱藏。

我得到這個got this

,但如果我設置

myTextView.contentInset = UIEdgeInsetsMake(0, 25, 0, 0); 
myTextView.contentSize = CGSizeMake(295, myTextView.contentSize.height); 

我得到的實際文本

required

請幫助。

回答

0

你可以請嘗試以下嗎?

myTextView.contentInset = UIEdgeInsetsMake(0, 25, 0, 25); 
myTextView.contentSize = CGSizeMake(295, myTextView.contentSize.height); 
+0

我不想水平滾動。如果我設置這些值。 textview開始水平滾動。 – fibnochi

0

蘋果的討論 here

「 邊緣插入值應用於矩形以縮小或擴大由該矩形表示的區域。通常,在視圖佈局過程中使用邊緣插入來修改視圖的框架,正值會導致框架插入(或縮水)按照指定的量。負值導致由指定的金額開始幀(或擴展)。 「 你可以這樣做UIEdgeInsetsMake(0,25,0,25

+0

我不想水平滾動。如果我設置這些值。 textview開始水平滾動。 – fibnochi

0

試試這個代碼:)

myTextView.contentInset = UIEdgeInsetsMake(0, 25, 0, -25); 
myTextView.contentSize = CGSizeMake(270, myTextView.contentSize.height); 

這可能會幫助你:)

+0

nope。同樣的問題。字符不顯示。 – fibnochi

1

fibnochi你可以使用不同的方法來做到這一點。我在我的應用程序的一個使用這一點,它是工作的罰款

所有你需要得到的UITextView的大小,將攜帶的所有數據,爲此,你需要使用NSString類委託函數​​首先

NSString* str = @"Your Entire string will come here"; 

CGSize size = [str sizeWithFont:[UIFont systemFontOfSize:17.0] constrainedToSize:CGSize(295, any large digit for maximum height say 10000) lineBreakMode:UILineBreakModeWordWrap]; 

textView.contentSize = size; 

這會解決你的問題嗎?請讓我知道

+1

不是爲我工作:( – fibnochi

+0

Fibnaochi你還需要給你的UITextView字體大小 [TextView的setfont程序:[UIFont systemFontSize:17]; 希望這對您 –

+0

我給它一個自定義的字體將工作和有計算大小使用該字體。現在我已經減少了水平線的垂直距離,因此UITextView的缺省值(8,8)插入被保留。雖然它正在工作,但我想回答。 – fibnochi