我一直想缩进一段的第一行。 我一直在使用firstLineHeadIndent如下:
let comment_message_style = NSMutableParagraphStyle()
comment_message_style.firstLineHeadIndent = 50.0
comment_message_style.headIndent = 0.0 // Tried to force other lines to 0 indent
var comment_message_indent = NSMutableAttributedString(string: "HELLO\nTest1\nTest Long Line so that it will break without adding the new line char to the string.")
comment_message_indent.addAttribute(NSParagraphStyleAttributeName, value: comment_message_style, range: NSMakeRange(0, comment_message_indent.length))
self.commentMessageLabel.attributedText = comment_message_indent
但是,每当我运行模拟器时,缩进都适用于所有新行。 (见下面的截图)
我正在使用最新版本的Xcode 6.1并在iOS 8.0上运行我的项目。
任何人都知道吗?
答案 0 :(得分:0)
问题是Xcode无法识别第一行结束的位置,即使您使用了" \ n"而且我不知道为什么会这样。
然而另一种方法是替换
var comment_message_indent = NSMutableAttributedString(string: "HELLO\nTest1\nTest Long Line so that it will break without adding the new line char to the string.")
带
var comment_message_indent = NSMutableAttributedString(string: "HELLO Test1\nTest Long Line so that it will break without adding the new line char to the string.")
空格的长度=第一行的总字符数 - 5.
这应该做的工作,你的非第一行将正确缩进,你也不必添加headIndent。