2014-10-31 57 views
1

我正在申请iOS 7iOS 8我想在我的UITextView中禁用自动换行。我有一些ASCII表格,我不希望它们损坏。UITextView禁用包装

我在StoryBoard中找不到选项,我尝试以编程方式执行此操作。我曾尝试:

[textView setContentSize:[[textView attributedText] size]]; 

[textView.textContainer setSize:[[textView attributedText] size]]; 

一切似乎是工作。

回答

2

UITextView是为您试图删除的确切功能而创建的。这可能是UITextView不是基于您的用例的最佳选择。有许多方法可以在不使用UITextView的情况下完成此操作。这里有几个:

1)如果文本不会被编辑,你可以使用UILabel。设置行数= 0,并设置行间断和自动收缩的适当设置。

2)如果文本需要可编辑,您应该在UIS​​crollView中使用UITextField。

3)制作一个自定义的UIView来计算所需的空间并自己绘制文本。 (这个选项是最强大的,但通常不是必须的,并且可以引入一些问题,前面提到的控件将为Apple创建这种类型的逻辑)。

希望这会有所帮助。

+0

非常感谢,我会在星期一进行测试并通知您。我需要一个多行文本,我不知道'UITextField'是否能满足我的要求。 – Octan 2014-11-01 14:26:01

+0

我能用UILabel做到这一点。不幸的是,它不适用于尺寸大于10000像素的标签。 – Octan 2014-11-03 09:00:04

+0

这是一个耻辱,但我想象一个UILabel确实需要一些限制。 – reshat2 2014-11-03 18:06:13