Wie kann ich die abschneiden einer Zeichenfolge innerhalb einer Zeichenfolge in einem UILabel?
Sagen, ich habe The Dark Knight Rises at 7:45pm
und ich müssen passen, die in einer festen Breite UILabel (für iPhone). Wie würde ich es machen, dass truncate wie "The Dark Knight Ris... um 7:45 Uhr" statt "Der Dunkle Ritter Erhebt sich auf 7:4..."?
Du musst angemeldet sein, um einen Kommentar abzugeben.
UILabel hat diese Eigenschaft:
Ermöglichen Sie, dass Verhalten durch eine Einstellung NSLineBreakByTruncatingMiddle.
BEARBEITEN
Ich din nicht verstehen, dass Sie wollte, abzuschneiden, nur ein Teil der Zeichenfolge.Dann Lesen Sie dies:
Beispiel
So gibt es auch eine Klasse für die Einstellung der paragraph-Stil: NSParagraphStyle und es hat auch, es ist veränderlich-version.
Lassen Sie uns sagen, Sie haben einen Bereich, in dem Sie sich bewerben möchten, Attribut:
Erstellen Sie eine NSMutableParagraphStyle-Objekt und stellen Sie es lineBreakMode zu NSLineBreakByTruncatingMiddle.Beachten Sie, dass Sie können auch eine ganze Menge anderer Parameter.So machen wir das:
Fügen Sie das Attribut für die attributedText des Labels in diesem Bereich.Die attributedText Eigenschaft ist ein NSAttributedString, und nicht ein NSMutableAttributedString, so müssen Sie erstellen eine NSMutableAttributedString und ordnen es zu, dass-Eigenschaft:
Beachten Sie, dass es gibt viele andere Eigenschaften, die für einen NSAttributedString, überprüfen hier.
Müssen Sie die
lineBreakMode
. Sie können entweder tun, die von Interface Builder oder programmatisch wie folgtbitte beachten Sie, dass seit iOS 5 die Art dieser Eigenschaft geändert von
UILineBreakMode
zuNSLineBreakMode
.Meine erste Idee wäre, zwei Etiketten nebeneinander, beide mit fester Breite, aber ich nehme an, Sie haben entschieden, dass aus nicht genannten Grund. Alternativ, berechnen die Kürzung manuell, wie diese ...
Nennen mag:
Diese erzeugt: @"The Dark Kni...um 7:45 Uhr"