Frage

Hat jemand wissen, wie in UILabel Text das Copyright-Symbol angezeigt werden? Dies ist das Symbol mit einem Kreis um c. Der HTML-Code für sie ist. © oder ©

Ich habe versucht, den folgenden Code:

UILabel *contactInfo = [[UILabel alloc] initWithFrame:CGRectMake(-55,135,420,100)];
contactInfo.text = @"'©):'2009 Nationwide ";

oder

contactInfo.text = @"'©'2009 Nationwide ";

oder

contactInfo.text = @"©2009 Nationwide ";

Es druckt einfach alles als Text und kein Symbol.

Dies würde in einem webView arbeiten, aber ich brauche es als UILabel Text. Jede Hilfe?

War es hilfreich?

Lösung

Wenn Ihre Quelldateien sind in UTF-8, was sie sein sollten, sollte dies gut funktionieren. Ansonsten sollten Sie .strings-Dateien in Kombination mit dem NSLocalizedString () Makro und setzen Sie Ihren Text in UTF-16-Dateien verwenden.

Funktioniert bei mir: myUILabel.text = @"© by me";


(Quelle: hillrippers. ch )

Edit: Nun, da ich sehe, dass Sie das Symbol als HTML-Entität einzufügen habe versucht -. Dies nicht funktioniert, nur das Symbol einfügen, wie es scheint,

Andere Tipps

In Interface Builder versuchen Option und G zusammen.

Wenn Sie keine Option haben drücken, versuchen Sie mit ALT .

Eine andere Möglichkeit, Symbole einzufügen, ohne mit Quelldateien Zeichenkodierung zu tun ist, sie als UTF-8-Byte entkommt mit \x zu kodieren.

Nach Fileformat.info , den Copyright-Zeichen in UTF-8-Byte ist 0xC2 0xA9.

So funktioniert das: @"\xC2\xA9 Nationwide"

Das ist, wie ich alles von mir zu tun.

Kopieren und das Copyright-Symbol einfügen © direkt in den Quelltext.

Es ist in der Regel keine gute Idee, nicht-ASCII-Zeichenfolge durch die Compiler zu setzen. Der UTF-8-Ansatz ist daher besser, wenn nicht lesbar. Sie könnten verwenden

NSLocalizedString(@"copyright", @"");

und dann ein .strings Datei mit

copyright = "©2009";

wäre viel einfacher sein, andere Nicht-ASCII-Zeichenkette zu verallgemeinern.

(BTW, es ist Option + g, nicht Option + c.)

Von iOS6> können wir NSAttributedString Konzept verwenden. Bitte beachten Sie den folgenden Code-Schnipsel. Bitte ignorieren, wenn jemand bereits bewusst.

static NSString *html =
    @"<html>"
    "  <body>Here is copyright &copy; </i></body>"
    "</html>";

    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 280, 300, 200)];
    NSError *err = nil;
    label.attributedText =
    [[NSAttributedString alloc]
     initWithData: [html dataUsingEncoding:NSUTF8StringEncoding]
     options: @{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType }
     documentAttributes: nil
     error: &err];
    if(err)
        NSLog(@"Unable to parse label text: %@", err);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top