如何将UILabel限制为25个字符,如果超过使用自动布局则显示点

时间:2017-05-05 12:23:10

标签: ios swift3 uilabel ios-autolayout

我想将UILabel文本限制为25个字符,如果文本长度超过,我需要在结尾显示点(...)。我在故事板中给UILabel提供了约束。

限制我使用下面的代码:

 if (cell.lblSubHeadingTop.text?.characters.count)! >= 25 {

        cell.lblSubHeadingTop.text = cell.lblSubHeadingTop.text?.substring(with: 0..<25)

    }

   cell.lblSubHeadingTop.adjustsFontSizeToFitWidth = true
    cell.lblSubHeadingTop.lineBreakMode = .byTruncatingTail

限制工作正常,但如果长度超过,如何显示点?

解决此问题的任何帮助。

1 个答案:

答案 0 :(得分:0)

你可以做点什么,

  if (lbl.text?.characters.count)! >= 25 {

        let index = lbl.text?.index((lbl.text?.startIndex)!, offsetBy: 25)
        lbl.text = lbl.text?.substring(to: index!)
        lbl.text = lbl.text?.appending("...")
    }

    //lbl.adjustsFontSizeToFitWidth = true
    //lbl.lineBreakMode = .byTruncatingTail

您的constraints应该像:Top,leading,fixed height