У меня есть UILabel, и я назначаю HTML-текст, как показано ниже.
m014.text = [NSString stringWithFormat:@"<html><head><style type='text/css'>body {background-color: transparent;border: 0px;margin: 0px;padding: 0px;font-family: '%@'; font-size: %fpx;;ccolor:;}</style></head><body dir='%@'>%@<style type='text/css'> iframe { width: 100%% !important; } img {width: 100%% !important; height: auto;} table {width: 100%%;}</style></body></html>", localize(@"myFontName"), @16, localize(@"myDir"), m014.text];
m014.attributedText = [[NSAttributedString alloc] initWithData: [m014.text dataUsingEncoding:NSUTF32StringEncoding] options: @{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType } documentAttributes: nil error: nil];
В iOS 10 и ниже я вижу обычный текст (обычный текст), однако в iOS 11 и выше я вижу HTML-текст в приложении. Я вижу HTML-код как есть ...
Есть идеи, почему это происходит?
В основном, я чувствую, что проблема в нижней строке.
[m014.text dataUsingEncoding:NSUTF32StringEncoding]
Но я помню, я использовал NSUTF32StringEncoding
, потому что я видел закодированные символы.