2017-05-05 1 views
1

Je veux limiter le texte UILabel à 25 caractères et si la longueur du texte dépasse je dois montrer des points à la fin (...) J'ai donné des contraintes à UILabel dans le storyboard.Comment limiter UILabel à 25 caractères et montrer des points si excède la mise en page automatique

Pour limiter ci-dessous je code:

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 

limite fonctionne bien, mais comment montrer des points si la longueur dépasse?

Toute aide pour résoudre ce problème.

+0

à partir du storyboard, sélectionnez simplement l'option de tracé de ligne tracée tronquée dans l'inspecteur d'attributs pour l'étiquette –

+0

Limitez la taille de l'étiquette à 25 caractères. L'étiquette le tronquera s'il dépasse –

Répondre

0

Vous pouvez faire quelque chose comme,

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 

Et votre constraints devrait ressembler à: Top,leading,fixed height!

+0

Merci de son travail – user2931321

+0

Vous êtes les bienvenus :) – Lion