SwiftでHTMLをプレーンテキストに変換する
2023-09-25 02:45:16
質問
Xcodeの初心者向けプロジェクトとして、簡単なRSSリーダーアプリを作成しています。現在、フィードを解析し、タイトル、公開日、説明、コンテンツを配置し、WebViewに表示するように設定しています。
最近、投稿を選択するために使用するTableViewに説明文(または内容の切り捨て版)を表示することにしました。しかしながら、そうする際に
cell.textLabel?.text = item.title?.uppercaseString
cell.detailTextLabel?.text = item.itemDescription //.itemDescription is a String
投稿の生のHTMLが表示されます。
TableViewの詳細UILabelだけ、HTMLをプレーンテキストに変換する方法を教えていただきたいです。
ありがとうございます!
どのように解決するのですか?
この拡張機能を追加すると、htmlコードを通常の文字列に変換することができます。
edit/updateを行います。
議論 HTMLインポータはバックグラウンドの スレッド (つまり、オプション辞書に documentType が含まれ、その値が が html の値である場合)。メイン スレッドとの同期を試みて失敗します。 そしてタイムアウトします。メイン スレッドから呼び出すと動作します (ただし、HTML の参照に HTMLに外部リソースへの参照が含まれている場合、タイムアウトする可能性があります。 これは何としても避けるべきです)。HTMLインポート機構は HTMLインポート機構はマークダウンのようなもの(つまり、テキストスタイル、色など)を実装するためのものです。 色など)を実装するためのものであり、一般的なHTMLインポートのためのものではありません。
Xcode 11.4 - Swift 5.2。
extension Data {
var html2AttributedString: NSAttributedString? {
do {
return try NSAttributedString(data: self, options: [.documentType: NSAttributedString.DocumentType.html, .characterEncoding: String.Encoding.utf8.rawValue], documentAttributes: nil)
} catch {
print("error:", error)
return nil
}
}
var html2String: String { html2AttributedString?.string ?? "" }
}
extension StringProtocol {
var html2AttributedString: NSAttributedString? {
Data(utf8).html2AttributedString
}
var html2String: String {
html2AttributedString?.string ?? ""
}
}
cell.detailTextLabel?.text = item.itemDescription.html2String
関連
-
[解決済み] UILabel 内のテキストを縦に上部に揃える
-
[解決済み] SwiftからObjective-Cのコードを呼び出すにはどうしたらいいですか?
-
[解決済み] iOSのステータスバーの文字色を変更する方法
-
[解決済み] Swiftで#pragmaマーク?
-
[解決済み] Swift Betaのパフォーマンス:配列のソート
-
[解決済み] iOSのバージョンを確認する方法を教えてください。
-
[解決済み] SwiftでStringを配列に分割する?
-
[解決済み] Swiftの@selector()?
-
[解決済み] SwiftでIntをStringに変換する
-
[解決済み] Swiftの配列を文字列に変換するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
クラッシュエラー libc++abi.dylib: NSException 型のキャッチできない例外で終了_allanGold のブログ - ProgrammerITS401
-
iOS classic error Undefined symbols for architecture XXX:
-
[解決済み] UITableViewCell、スワイプ時に削除ボタンを表示させる
-
[解決済み] 「GCC使用時に「Xcode/iOSのライセンスに同意するには管理者権限が必要です。rootでsudoを使用して再実行してください。
-
[解決済み] NSOperationとGrand Central Dispatchの比較
-
[解決済み] SwiftでURLから画像を読み込む/ダウンロードする
-
[解決済み] UIImageのサイズを変更する最も簡単な方法?
-
[解決済み] ファイルはユニバーサル(3スライス)ですが、iOSの静的ライブラリのための(n)ARMv7-sスライスエラーが含まれていない、どうにかして回避するには?
-
[解決済み] iOS 11、Apple TV 4Kなどを搭載したXcode 9でワイヤレスデバッグを行う方法とは?
-
[解決済み] Swift: HTMLデータをラベルやtextViewに表示する [重複]。