如何使UITextView
更改其字體大小,以便所有文本最多隻能包含兩行內容?如果文字完全符合一行或兩行,那麼我不希望字體大小發生改變。但是如果文字已經存在,我需要它變得更小。謝謝。如果文本長度超過兩行,Swift UITextView會更改字體大小
0
A
回答
0
除非特別需要使用UITextView
,否則我推薦使用UILabel
。這個代碼限制了UILabel
爲兩行,使得它的文本自動收縮:
label.numberOfLines = 2
label.adjustsFontSizeToFitWidth = true
1
我相信你有一個偉大的理由使用UITextView
,因此我認爲這可能是有點棘手,需要大量的測試,以看到它實際上正如你所料。
我的建議是,計算的行數:
let font = yourFont
let size = yourTextView.contentSize
let inset = yourTextView.textContainerInset
let rows = (size.height - inset.top - inset.bottom)/font.lineHeight
進去textView
的委託方法行,像textView:shouldChangeTextIn:...
例如,變字體大小根據此信息。
另一個建議是使無形UILabel
設置如下圖所示的屬性:
label.font = yourFont
label.frame = CGRect(x: 0, y: 0, width: yourTextView.contentSize.width, height: yourTextView.contentSize.height)
label.numberOfLines = 2
label.adjustFontSizeToFitWidth = true
內。然後textView
的委託方法,更新label
的文字和
textView.font = label.font
我不知道由於我沒有爲自己測試它們,所以其中任何一個都可以正常工作,但我希望這可以幫助您爲此問題設定一個起點。
相關問題
- 1. 更改一行UITextView的字體大小?
- 2. 如何更改uitextview字體大小
- 3. UISlider更改UITextView的字體大小
- 4. 我想更改UITextView的字體大小
- 5. 根據文本長度更改字體大小
- 6. 如果文本超出文本塊的邊界,則更改字體大小
- 7. UITextView字體大小
- 8. 如何更改swift 2.2中pickerview中的文本/字體大小?
- 9. 文件大小超過長度
- 10. IPhone:如何防止插入文本,如果文本超過UITextview的大小
- 11. 更改字體大小如果字符超過特定字符數
- 12. 如果文本文本長度超過fPDF中的單元格寬度?
- 13. 字體大小在文本較長時不會調整大小
- 14. 如果文本大小增加,如何更改文本框大小(高度)?
- 15. 根據字符串長度更改UILabel中的字體大小
- 16. 根據文本大小更改UITextView的高度 - ios7
- 17. 如果文本長度超過max_characters,則換行
- 18. 更改UITextView的字體大小泄漏內存
- 19. 更改UITextView的字體大小後旋轉奇怪的iOS 5
- 20. rtf更改字體大小
- 21. 如果超過10個字符長度收縮文本
- 22. 更改Div字體大小和字體
- 23. 更改字體大小調整和更改文件的高度時,字體大小的更改
- 24. 更改字體大小/寬度
- 25. UiTextView更改字體大小不起作用
- 26. 更改NSButton的字體大小不會改變任何東西
- 27. NSAttributedString更改字體大小
- 28. 更改字體大小macvim?
- 29. 當文字太長時用jQuery更改字體大小
- 30. 根據文本字體大小更改控件大小