0

Ich versuche, Text in einem UILabel mit attributedText mit 2 verschiedenen Textausrichtungen anzuzeigen. Ich hole die Werte von Firebase & sie sind Schlüssel-und Werttypen. Aus irgendeinem Grund kann ich den Titel nicht linksbündig und den Untertitel nicht richtig ausrichten. Jede Hilfe wird geschätzt.NSAttributedString mit zwei verschiedenen Textausrichtungen

private func descriptionAttributedText() -> NSAttributedString { 
    let title = "some title on the left side of the screen" 
    let subtitle = "subtitle on the right side" 

    let rightParagraph = NSMutableParagraphStyle() 
    rightParagraph.alignment = .right 

    let titleAttributes = [NSAttributedStringKey.font: UIFont.systemFont(ofSize: 14), NSAttributedStringKey.foregroundColor: UIColor.black] 
    let titleString = NSMutableAttributedString(string: title, attributes: titleAttributes) 

    let subtitleAttributes = [NSAttributedStringKey.font: UIFont.systemFont(ofSize: 13), NSAttributedStringKey.foregroundColor: UIColor.darkGray, NSAttributedStringKey.paragraphStyle: rightParagraph] 
    let subtitleString = NSAttributedString(string: subtitle, attributes: subtitleAttributes) 

    let paragraph = NSMutableParagraphStyle() 
    paragraph.setParagraphStyle(.default) 
    paragraph.lineSpacing = 2 

    let range = NSMakeRange(0, titleString.string.count) 
    titleString.addAttribute(NSAttributedStringKey.paragraphStyle, value: paragraph, range: range) 

    titleString.append(subtitleString) 


    return titleString 
} 

Das Ergebnis erhalte ich vom Typ „Titlesubtitle“

Ich habe hier sah, Attributed text with two text alignments, aber es macht mir nicht viel helfen.

Ich versuche, die gleiche Wirkung wie im App Store zu bekommen, aber statt

Verkäufer ..................... Facebook Inc ., ich bin immer

SellerFacebook Inc.

img_5752

+0

Warum sagen Sie, dass sie nicht ausgerichtet sind? Könntest du posten was du bekommst? –

+0

Ich habe die Frage bearbeitet. – r3dm4n

+0

Ich sehe, dann können Sie das Problem auf diese Weise nicht lösen ('NSAttributedString'). Im Bild gibt es wahrscheinlich ein 'UITableView' (könnte auch ein benutzerdefiniertes' UIVIew' sein) mit einem 'UITableViewCell' (über das erste sprechend) mit zwei verschiedenen' UILabel'. –

Antwort

0

ich die richtige Detail gestylt Zellen als @vadian adivsed mit dem Problem gelöst habe.

let cell = UITableViewCell(style: .value1, reuseIdentifier: "CellId") 

Vielen Dank!

Verwandte Themen