HTML в NSMutableAttributedString не работает в ios 6

Я использую приведенный ниже код для преобразования текста HTML в NSMutableAttributedString и отображения его в UITextView. -

attributedStringTitle = [[NSMutableAttributedString alloc] initWithData:[titleString dataUsingEncoding:NSUnicodeStringEncoding] options:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType } documentAttributes:nil error:nil];

Это нормально работает для iOS 7 или новее, но не работает на iOS 6. Пожалуйста, помогите.


person Viper    schedule 28.10.2014    source источник


Ответы (3)


NSHTMLTextDocumentType недоступен в iOS6:

Из документов Apple:

NSHTMLTextDocumentType документ на языке гипертекстовой разметки (HTML).

Доступно в iOS 7.0 и новее.

person zaph    schedule 28.10.2014
comment
Найдите сторонние библиотеки, проверьте CocoaPods. - person zaph; 28.10.2014

Это потому, что NSHTMLTextDocumentType доступен только в iOS 7 и новее. Прочтите здесь для получения списка доступных констант.

person Levi    schedule 28.10.2014
comment
Найдите стороннюю платформу или вручную обработайте компоненты из HTML-документа. - person Levi; 28.10.2014

Согласно Документам NSHTMLTextDocumentType is only available on iOS 7 and later Итак, есть несколько альтернатив, которые вы можете сделать: -

1) Для этого вы можете использовать 3rd party Framework.

2) Используйте UIWebView

3) Обратитесь к этому display-html-text-in-uitextview.

Но если вам нужно только преобразовать теги html в строки, вы можете использовать initWithString api для обходного пути. Но перед этим вам нужно создать строковый объект str из NSData, используя _5 _: -

- (NSString *)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding;
- (id)initWithString:(NSString *)str attributes:(NSDictionary *)attrs;

Примечание. Два приведенных выше API будут анализировать теги HTML как простой текст.

person Hussain Shabbir    schedule 28.10.2014