【问题标题】:How to word wrap text? [duplicate]如何自动换行文字? [复制]
【发布时间】:2010-11-01 07:35:34
【问题描述】:

在 Cocoa 中,NSAttributedString 上有一个方法 (lineBreakBeforeIndex:withinRange:) 可以在一段文本中找到合适的换行符。

由于 iPhone 上不存在 NSAttributedString,有没有人对类似功能有任何建议?

编辑:意识到我真的在寻找自动换行算法。例如,我希望文本以 80 个字符换行;我在哪里放置换行符,以便单词不会分成两行?

编辑:一个例子可能会有所帮助。假设我有以下几行:
这是第 1 行,它的长度可能不会超过 80 个字符。
这是另一行不同的文本,更长但不是很多。

我想把它变成类似的东西:
这是第 1 行,可能
甚至不会是 80 个字符
长。
这是另一行
不同的文本是
更长,但不是很多。

编辑:我希望将此文本放在 UITextView 中,以便可以进行其他编辑(非常类似于引用的电子邮件回复)

【问题讨论】:

  • 您是否需要在一般或特定文本(如 UILabel)中对字符串进行换行?
  • 字符串本身将来自外部源;它不会来自(或进入)UILabel。

标签: iphone cocoa cocoa-touch


【解决方案1】:
NSString *newString = [oldString stringByReplacingOccurrencesOfString:@"\n" withString:@"<br />"];

这将找到所有换行符并将其替换为“
”标记。只需根据您自己的需要对其进行编辑。 :)

【讨论】:

  • 对不起,我没有很好地表达这个问题。希望我的编辑能让它更清楚。
猜你喜欢
  • 1970-01-01
  • 2011-09-15
  • 1970-01-01
  • 2011-06-05
  • 2011-02-23
  • 2012-07-27
  • 2023-02-25
  • 2011-06-02
  • 1970-01-01
相关资源
最近更新 更多