如何使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. 根据文本字体大小更改控件大小