Ios 在UILabel中仅自动收缩宽度? 我有一些ASCII语法图,中间不能有断线。

Ios 在UILabel中仅自动收缩宽度? 我有一些ASCII语法图,中间不能有断线。,ios,swift,Ios,Swift,这些不必是可编辑的,所以我认为最好的方法是使用带有自动收缩选项的UILabel。但如果内容与标签框矩形的高度不匹配,此选项也会收缩文本 我只想缩小,如果内容不适合宽度。在文本中垂直滚动完全可以 使用UILabel或任何其他UI元素执行此操作的最佳方法是什么 使用UITextView,将“可编辑”属性设置为false。因此,让我重新表述您的问题。我想你想要的是一个UILabel,它可以显示多行,但最长的行需要适合UILabel的宽度。如果这是你想要的,那么想象力对我来说很奇怪 但不管怎样,我觉得你

这些不必是可编辑的,所以我认为最好的方法是使用带有自动收缩选项的UILabel。但如果内容与标签框矩形的高度不匹配,此选项也会收缩文本

我只想缩小,如果内容不适合宽度。在文本中垂直滚动完全可以


使用UILabel或任何其他UI元素执行此操作的最佳方法是什么

使用UITextView,将“可编辑”属性设置为false。

因此,让我重新表述您的问题。我想你想要的是一个UILabel,它可以显示多行,但最长的行需要适合UILabel的宽度。如果这是你想要的,那么想象力对我来说很奇怪

但不管怎样,我觉得你的环境有冲突。首先,允许多行意味着您将lines属性number of lines设置为0,这允许无限行。但是,自动收缩将不起任何作用。恐怕仅仅设置情节提要是不可能的,相反,您需要编写一些代码

我猜人们之前已经提出了相关的问题,他们希望在文本过长时动态地改变字体大小。我想你应该看看这个:


最后一个问题是你也想要滚动效果,这就是为什么我觉得前景会很奇怪。但简而言之,要实现这一点,您需要1动态更改UILabel高度,很可能使用与参考线程中解释的相同技术,2在滚动视图中包装UILabel。也许这可以实现你想要的。

我不明白。。。你期望的结果是什么?您想只保留一行还是分成几行?另外,您选择了Autoshrink中的哪个选项?我有很多ASCII语法图。所有这些都具有可变的长度和高度。有的有10行,有的有100行。因此UILabel autoshrink函数将收缩整个100线图,因为它不适合高度。但这不是我想要的。高度应该是可滚动的。我只想收缩,如果图表不适合宽度,以防止在图中线断裂。我选择设置最小字体大小的自动收缩。希望我现在解释清楚-对不起,没有母语是英语的人,这不起作用。如果内容达到宽度边框,UITextView会换行。我理解你的问题。你必须把图表分成几行。并为每行制作UIL标签。并显示那些使用UITableView的用户在UITableViewCell中放置UILabels,但会收缩包含许多字符的行,而其他行则不会。所以这些线再也不合适了…谢谢。。。我将尝试像这样实现它。展望未来:正如我提到的,我的内容是文本中的语法图。使用命令、参数、箭头等。这些不能中间有断线。我不知道用别的方法来解决它。标准的自动收缩将不必要地收缩内容,使其更难阅读。通过垂直滚动图表,您将能够毫无问题地理解它们。但我会很高兴有其他的解决办法。