Come visualizzare l'icona del copyright nel testo di UILabel?
-
06-07-2019 - |
Domanda
Qualcuno sa come visualizzare l'icona del copyright nel testo di UILabel? Questa è l'icona con un cerchio attorno a c. Il codice html è: & amp; copy;
o & amp; # 169;
.
Ho provato il seguente codice:
UILabel *contactInfo = [[UILabel alloc] initWithFrame:CGRectMake(-55,135,420,100)];
contactInfo.text = @"'©):'2009 Nationwide ";
o
contactInfo.text = @"'©'2009 Nationwide ";
o
contactInfo.text = @"©2009 Nationwide ";
Stampa tutto come testo e nessuna icona.
Funzionerebbe in una webView ma ne ho bisogno come testo UILabel. Qualche aiuto?
Soluzione
Se i tuoi file sorgente sono in UTF-8, come dovrebbero essere, questo dovrebbe funzionare bene. Altrimenti dovresti usare .strings-files in combinazione con la macro NSLocalizedString () e inserire il tuo testo in file UTF-16.
Funziona per me: myUILabel.text = @ " & # 169; da parte mia " ;;
(fonte: hillrippers. ch )
Modifica: Ora che vedo che hai provato a inserire il simbolo come entità HTML, non funziona, inserisci il simbolo così come appare.
Altri suggerimenti
Nel builder di interfacce prova Option e G insieme.
Se non si dispone di una chiave Opzione , provare con ALT .
Un altro modo per inserire simboli senza occuparsi della codifica dei caratteri dei file sorgente è codificarli come byte UTF-8 usando \ x
escape.
Secondo Fileformat.info , l'accesso al Copyright I byte UTF-8 sono 0xC2 0xA9.
Quindi funziona: @ " \ xC2 \ xA9 Nationwide "
È così che faccio tutto il mio.
Copia e incolla il simbolo del copyright © direttamente nel tuo codice sorgente.
Di solito non è una buona idea inserire stringhe non ASCII nel compilatore. L'approccio UTF-8 è quindi migliore, se illeggibile. Puoi usare
NSLocalizedString(@"copyright", @"");
e quindi un file .strings con
copyright = "©2009";
sarebbe molto più facile generalizzare ad altre stringhe non ASCII.
(A proposito, è l'opzione + g, non l'opzione + c.)
Da iOS6 > possiamo usare il concetto NSAttributedString. Consulta lo snippet di codice seguente. Si prega di ignorare se qualcuno già a conoscenza di questo.
static NSString *html =
@"<html>"
" <body>Here is copyright © </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);