Pregunta

¿Alguien sabe cómo mostrar el ícono de copyright en el texto de UILabel? Este es el icono con un círculo alrededor de c. El código html para ello es: & amp; copy; o & amp; # 169; .

Probé el siguiente código:

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

o

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

o

contactInfo.text = @"©2009 Nationwide ";

Simplemente imprime todo como texto y no como icono.

Esto funcionaría en una vista web pero lo necesito como texto de UILabel. ¿Alguna ayuda?

¿Fue útil?

Solución

Si sus archivos de origen están en UTF-8, lo que deberían ser, esto debería funcionar bien. De lo contrario, debería usar .strings-files en combinación con la macro NSLocalizedString () y colocar el texto en archivos UTF-16.

Funciona para mí: myUILabel.text = @ " © por mí " ;;

 © by me
(fuente: hillrippers. ch )

Editar: Ahora que veo que ha intentado insertar el símbolo como entidad HTML, esto no funciona, simplemente inserte el símbolo como aparece.

Otros consejos

En el constructor de interfaces, intente con Option y G juntos.

Si no tiene una clave Opción , intente con ALT .

Otra forma de insertar símbolos sin tratar con la codificación de caracteres de los archivos de origen es codificarlos como bytes UTF-8 usando escapes \ x .

Según Fileformat.info , el inicio de sesión de Copyright Los bytes UTF-8 son 0xC2 0xA9.

Esto funciona: @ " \ xC2 \ xA9 Nationwide "

Así es como hago todo lo mío.

Copie y pegue el símbolo de copyright © directamente en su código fuente.

Por lo general, no es una buena idea colocar cadenas que no sean ASCII a través del compilador. El enfoque UTF-8 es, por lo tanto, mejor, si es ilegible. Podrías usar

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

y luego un archivo .strings con

copyright = "©2009";

sería mucho más fácil de generalizar a otras cadenas no ASCII.

(Por cierto, es la opción + g, no la opción + c.)

Desde iOS6 > Podemos usar el concepto NSAttributedString. Por favor, vea el siguiente fragmento de código. Por favor ignore si alguien ya esta consciente de esto.

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);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top