有啥方法可以改变 UIStackView 中 UITextView 的行距/边距/填充?
Posted
技术标签:
【中文标题】有啥方法可以改变 UIStackView 中 UITextView 的行距/边距/填充?【英文标题】:Is there any way to alter line spacing/margins/padding for a UITextView inside a UIStackView?有什么方法可以改变 UIStackView 中 UITextView 的行距/边距/填充? 【发布时间】:2016-12-18 22:17:19 【问题描述】:所以我有一个原型细胞。
这是一个带有多个按钮的水平堆栈视图,以及作为最右侧子视图的文本视图。
我的问题是文本视图的文本太高了,这使得两行可以适应单元格的高度,而不仅仅是一行。但是我需要将字体大小保持在这个值,所以我不能增加它并以这种方式实现每单元格一行。
所以我需要以某种方式制作行距/边距/等。对于文本视图来说更大,这样当其中只有一行文本时,文本将在单元格中居中。或一些近似值,例如可能在文本视图本身周围设置边距。
但我似乎找不到任何方法来做到这一点。
我尝试为文本视图设置约束,但这只是以某种方式使整个堆栈视图消失。我尝试进入文本视图的大小检查器并设置显式布局边距,但 Xcode 完全崩溃了,所以我认为这可能是不允许的。
任何了解 UITextViews 的人都可以分享一些见解吗?
【问题讨论】:
【参考方案1】:使用 UITextField 并将高度约束设置为大于等于优先级 250 的值。
【讨论】:
我无法使用 UITextField。我需要使用 UITextView 以便输入到任何给定表格单元格的文本可以占用多行。除非我对 UITextField 功能有严重误解?【参考方案2】:经过进一步研究和测试,这似乎是在文本视图中为文本设置插图的最佳方式:
cellField.textContainerInset = UIEdgeInsetsMake(10.0, 0.0, 10.0, 0.0)
可以通过 UITextView 的 Identity Inspector 选项卡中的 Storyboard 设置相同的内容,方法是添加类型为“Rect”的“textContainerInset”运行时属性并设置所需的值。
【讨论】:
以上是关于有啥方法可以改变 UIStackView 中 UITextView 的行距/边距/填充?的主要内容,如果未能解决你的问题,请参考以下文章