Pergunta

faz qualquer um sabe como exibir o ícone de copyright no texto UILabel? Este é o ícone com um círculo em torno de c. O código html para ele é:. © ou ©

Eu tentei o seguinte código:

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

ou

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

ou

contactInfo.text = @"©2009 Nationwide ";

Ele só imprime tudo, como texto e nenhum ícone.

Isso poderia funcionar em uma webView mas eu preciso dele como texto UILabel. Qualquer ajuda?

Foi útil?

Solução

Se os seus arquivos de origem estão em UTF-8, o que deveria ser, isso deve funcionar muito bem. Caso contrário, você deve usar .strings-arquivos em combinação com o macro NSLocalizedString () e colocar seu texto em UTF-16-arquivos.

funciona para mim: myUILabel.text = @"© by me";

© por mim
(fonte: hillrippers. ch )

Editar: Agora que eu ver que você tentou inserir o símbolo como entidade HTML -. Isso não funciona, basta inserir o símbolo como aparece

Outras dicas

Em Interface Builder tentativa Opção e G juntos.

Se você não tem um Opção chave, tente com ALT .

Outra forma de inserir símbolos sem lidar com a codificação de caracteres seus arquivos de origem é codificá-los como UTF-8 bytes usando escapes \x.

De acordo com a Fileformat.info , o sinal de Copyright em bytes UTF-8 é 0xC2 0xA9.

Então, isso funciona: @"\xC2\xA9 Nationwide"

É assim que eu faço todos os meus.

Copie e cole o símbolo de copyright © diretamente em seu código-fonte.

Não é geralmente uma boa idéia de colocar cordas não-ASCII através do compilador. A abordagem UTF-8 é, portanto, melhor, se ilegível. Você pode usar

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

e, em seguida, um arquivo .strings com

copyright = "©2009";

seria muito mais fácil generalizar a outras cordas não-ASCII.

(BTW, é opção + g, não opção + c.)

De iOS6> podemos usar conceito NSAttributedString. Por favor, veja o trecho de código abaixo. Por favor, ignore se alguém já ciente disto.

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 em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top