| | |
| | | * @param context |
| | | * @return |
| | | */ |
| | | public static CharSequence getClickableHtml(String html, Context context,Integer color) { |
| | | public static CharSequence getClickableHtml(String html, Context context, Integer color) { |
| | | Spanned spannedHtml = Html.fromHtml(html); |
| | | SpannableStringBuilder clickableHtmlBuilder = new SpannableStringBuilder(spannedHtml); |
| | | URLSpan[] urls = clickableHtmlBuilder.getSpans(0, spannedHtml.length(), URLSpan.class); |
| | | for (final URLSpan span : urls) { |
| | | setLinkClickable(clickableHtmlBuilder, span, context, color); |
| | | } |
| | | return clickableHtmlBuilder; |
| | | } |
| | | |
| | | public static CharSequence getClickableHtml(Spanned spannedHtml, Context context, Integer color) { |
| | | SpannableStringBuilder clickableHtmlBuilder = new SpannableStringBuilder(spannedHtml); |
| | | URLSpan[] urls = clickableHtmlBuilder.getSpans(0, spannedHtml.length(), URLSpan.class); |
| | | for (final URLSpan span : urls) { |
| | |
| | | int end = clickableHtmlBuilder.getSpanEnd(urlSpan); |
| | | int flags = clickableHtmlBuilder.getSpanFlags(urlSpan); |
| | | |
| | | ClickableSpan clickableSpan = new ClickableSpan() { |
| | | clickableHtmlBuilder.setSpan( new ClickableSpan() { |
| | | public void onClick(View view) { |
| | | context.startActivity(new Intent(context, ShareBrowserActivity.class).putExtra("url", urlSpan.getURL())); |
| | | } |
| | |
| | | public void updateDrawState(TextPaint ds) { |
| | | if (linkColor != null) |
| | | ds.setColor(linkColor); |
| | | // //设置是否要下划线 |
| | | //设置是否要下划线 |
| | | ds.setUnderlineText(false); |
| | | ds.clearShadowLayer(); |
| | | } |
| | | }; |
| | | clickableHtmlBuilder.setSpan(clickableSpan, start, end, flags); |
| | | }, start, end, flags); |
| | | } |
| | | |
| | | } |