从左边插入UILabel文本

时间:2014-10-12 22:58:47

标签: ios swift uilabel

我有一个UILabel,用于显示多行文字。在显示文本的那一刻,它正好在标签的左侧,看起来不太好。我希望文字从左边稍微插入。

到目前为止,这是我的代码:

        if notes.objectAtIndex(indexPath.row) as NSString == "" {
            cell.notesLabel.text = "No notes to display."
            cell.notesLabel.textAlignment = NSTextAlignment.Center
        } else {
            cell.notesLabel.textAlignment = NSTextAlignment.Left
        }

我正在查看一些Objective-C示例,但我无法让它们工作,我认为它们并不是我想要的。

另外,我试图用不同的标签做同样的事情,在这种情况下我假设我可以在字符串的末尾添加“”(因为它是一个单行标签)来移动它是的,但我很惊讶地看到这不起作用?

感谢。

1 个答案:

答案 0 :(得分:11)

要从左边缘插入文本,您应该创建一个UILabel子类,并覆盖drawTextInRect:,

class RDLabel: UILabel {

    override func drawTextInRect(rect: CGRect) {
        let newRect = CGRectOffset(rect, 10, 0) // move text 10 points to the right
        super.drawTextInRect(newRect)
    }
}