2010-12-03 15 views
0

Fett geschrieben Ich analysiere eine XML-Datei und erhalte eine Zeichenfolge wie NSMutableString. Jetzt möchte ich diese Zeichenfolge als Text in meinem UIView zeigen. Also habe ich einen TextView erstellt und seinen Wert auf meine Zeichenfolge festgelegt. Das Ergebnis war, dass ich den Text mit HTML-Tags in der Textansicht angezeigt habe.Setzen von Teilen eines Strings in UIView

Es gibt kein Problem, die Tags aus der Zeichenfolge zu entfernen, aber ein Teil des Textes muss fett dargestellt werden.

Gibt es eine Möglichkeit, Teile einer Zeichenfolge programmgesteuert fett darzustellen?

Ich ersetzte <br> Elemente mit \n und es funktioniert gut für den Zeilenumbruch.

Aber ich weiß immer noch nicht, was ich tun kann, um Wörter zwischen starken Tags als fett in der UIView anzuzeigen.

Antwort

0

Es gibt zwei Möglichkeiten. Die erste besteht darin, sie in UIWebViews anzuzeigen; vor iOS 4.1 war dies effektiv der einzige Weg. Weil Sie bereits HTML-Codes im Text haben, wäre es sicherlich einfach.

Wenn Ihre App nur auf iOS 4.1 und höher läuft, können Sie Core Text verwenden, der eine sehr reichhaltige Formatierung bietet.

EDIT

Apple stellt einige gute Ressourcen:

About Text, Web, and Editing Support in iOS

Core Text Programming Guide

WWDC 2010 Session Videos - folgen Sie dem Link zu iTunes und greifen Session 110: Advanced Text Handhabung für iPhone OS
(Apple Developer Login erforderlich)

+0

Hey, danke für deine Antwort. Aber in UIWebView kann ich die anderen obj-c Funktionen nicht mehr verwenden, richtig? Die App arbeitet bereits am neuesten iOS SDK. Können Sie mir einen guten Quellenlink für Core Text geben? – DevZarak

+0

Nun, Sie haben es mit dem Rendern von HTML-Text zu tun, aber Sie haben Zugriff auf den Text und können fast alles tun, was Sie wollen, wenn auch ungeschickt. Ich habe ein paar Links hinzugefügt, die helfen sollten. Viel Glück! –

0

Sie können UIWebView verwenden und Ihren Inhalt von einem NSString-Objekt laden.

Wie auch immer, wenn Sie an Cocoa bleiben wollen, schauen Sie sich NSAttributedString an.