2011-06-09 142 views
1

由於某種原因,UITextView在最後產生一個空行,導致它在文本實際上完全符合邊界時被無意義滾動。如何刪除UITextView的最後一行?

我發現添加到UITextView的contentView文本底部的這個額外空間幾乎就是字體大小。所以它是一個額外的文本行。

我想刪除該行,以便在沒有理由滾動時UITextView不可滾動。

editable設置爲否。

我試着用高度減小來設置contentSize屬性,但這沒有效果。

該字符串在結尾處沒有空格或返回字符。它來自UITextView。測試了很多不同的字符串。

回答

1

你可以試着改變contentInset財產和底部插入設置爲-10。我個人認爲這將是一種黑客攻擊,但是當我測試它時,它就會起作用,因此只需檢查正確的插入內容即可。

1
textView.text = [textView.text stringByTrimmingCharactersInSet:[NSCharacterSet whiteSpaceAndNewLineCharacterSet]]; 
+1

絕對沒有換行符或空格字符。它來自一個非常長的@「verylongstring」,沒有\ n或任何其他的東西......這是UITextField中的一個錯誤,它會導致一條新行不成立。 – 2011-06-09 10:19:09

+0

我只在iOS 4上看到這個。無論如何,我認爲這個空間是爲了給自動填充建議騰出空間而添加的。查看http://www.hanspinckaers.com/multi-line-uitextview-similar-to-sms瞭解更多詳情和可能的解決方案。 – charshep 2012-02-12 04:28:44