13

UILabel テキストに著作権アイコンを表示する方法を知っている人はいますか? これは、c の周りに円が付いたアイコンです。その HTML コードは次のとおりです。©または©.

次のコードを試しました:

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

また

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

また

contactInfo.text = @"©2009 Nationwide ";

すべてをテキストとして印刷し、アイコンは表示しません。

これは webView で機能しますが、UILabel テキストとして必要です。何か助けはありますか?

4

6 に答える 6

30

インターフェイスビルダーOptionG一緒に試してみてください。

キーがない場合はOption、 を試してくださいALT

于 2009-10-23T16:58:45.057 に答える
12

ソース ファイルが UTF-8 である場合、これは問題なく動作するはずです。それ以外の場合は、.strings-files を NSLocalizedString() マクロと組み合わせて使用​​し、テキストを UTF-16 ファイルに入れる必要があります。

私のために働く:myUILabel.text = @"© by me";

©私によって
(出典: Hillrippers.ch )

編集: シンボルを HTML エンティティとして挿入しようとしたことがわかりました。これは機能しません。表示されるとおりにシンボルを挿入するだけです。

于 2009-10-23T16:59:06.630 に答える
7

ソースファイルの文字エンコードを処理せずにシンボルを挿入する別の方法は、\xエスケープを使用してそれらをUTF-8バイトとしてエンコードすることです。

Fileformat.infoによると、UTF-8バイトの著作権記号は0xC20xA9です。

したがって、これは機能します。@"\xC2\xA9 Nationwide"

それが私のすべてのやり方です。

于 2009-10-23T20:09:58.603 に答える
5

著作権記号 © をソース コードに直接コピー アンド ペーストします。

于 2009-10-23T17:00:11.700 に答える
1

通常、コンパイラに非ASCII文字列を挿入することはお勧めできません。したがって、UTF-8アプローチは、読めない場合はより優れています。あなたが使うことができます

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

次に、.stringsファイルと

copyright = "©2009";

他の非ASCII文字列に一般化する方がはるかに簡単です。

(ところで、それはオプション+ cではなく、オプション+ gです。)

于 2009-10-26T05:21:12.337 に答える
1

iOS6> から NSAttributedString の概念を使用できます。以下のコード スニペットを参照してください。既に知っている人がいたら無視してください。

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);
于 2014-09-19T10:33:31.360 に答える