Html.fromHtml() を使用して、コンテンツをラップできない問題を解決し、Weibo コンテンツの表示効果を模倣します。
1. 達成される効果
以下の図に示すように、矢印で示された Weibo コンテンツ部分にはハイパーリンクが含まれており、ハイパーリンクをクリックした後、対応する WebView ページにジャンプする必要があります。 (画像を csdn にアップロードしようと何度も試みましたが成功しませんでした。解決してください。ご苦労様でした。)
、
上記のようにコーディングした後、テキストを折り返せないという問題が発生しました。たとえば、私のアプリケーションで改行を含む投稿を投稿しましたが、改行がありませんでした。投稿詳細ページを表示します。
分分分分 分分分
サーバーから返されたデータを表示すると、こんな感じです。 「これはテスト投稿です。n をラップできるかどうかをテストしたいのです。」 そこで、HTML が「n」を解析できない理由がわかりました。
解解解解
/** * 设置TextView中URL由内嵌浏览器打开 * @param context * @param textView*/public static void setOpenUrlByBrowser(Context context, TextView textView) {textView.setMovementMethod(LinkMovementMethod.getInstance());CharSequence text = textView.getText();if (text instanceof Spannable) {int end = text.length();Spannable sp = (Spannable) textView.getText();URLSpan[] urls = sp.getSpans(0, end, URLSpan.class);SpannableStringBuilder style = new SpannableStringBuilder(text);style.clearSpans();for (URLSpan url : urls) {MyURLSpan myURLSpan = new MyURLSpan(context, url.getURL());style.setSpan(myURLSpan, sp.getSpanStart(url), sp.getSpanEnd(url), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);}textView.setText(style);}}
地球の皆さん、上記はこの小さな問題の解決策にすぎません。賢い人なら、他の問題を解決するために、コンテンツを解析して最大限に活用するでしょう。バレンタインデー、ハッピーバレンタインデーO(∩_∩)O笑〜