android-Android 自定义html标签问题

问题描述

Android 自定义html标签问题

首先参照网上的例子实现一个自定义标签

                tvName.setText(Html.fromHtml(value, null, new TagHandler() {
                    private int startIndex = 0;
                    private int stopIndex = 0;
                    @Override
                    public void handleTag(boolean opening, String tag, Editable output,XMLReader xmlReader) {
                        //Logger.e("TimeResultAdapter", "handleTag-->"+output.toString());
                        if (tag.toLowerCase().equals("game")) {
                              if (opening) {
                                  startGame(tag, output, xmlReader);
                              }else{
                                  endGame(tag, output, xmlReader);
                              }
                         }
                    }
                    public void startGame(String tag, Editable output, XMLReader xmlReader) {
                        startIndex = output.length();
                        Logger.e("TimeResultAdapter", "startGame-->"+output.toString());
                    }
                    public void endGame(String tag, Editable output, XMLReader xmlReader) {
                        stopIndex = output.length();
                            //把标签内的文字变成蓝色
                        output.setSpan(new ForegroundColorSpan(context.getResources().getColor(R.color.common_bg_blue)), startIndex, stopIndex, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
                        Logger.e("TimeResultAdapter", "endGame-->"+output.toString());
                    }
                }));

上面我是用内部类的方式重写了TagHandler这个类
当value=“xxxx要做特殊处理的文字xxxxxxx”或value="xxxx要做特殊处理的文字xxxxxxx,xxxx要做特殊处理的文字xxxxxxx"时都能正常显示
log打印如下格式(第一种情况)
01-06 09:56:39.526: E/TimeResultAdapter(15935): startGame-->xxxx
01-06 09:56:39.526: E/TimeResultAdapter(15935): endGame-->xxxx要做特殊处理的文字
当value="要做特殊处理的文字xxxxxxxxxx"时就出现了问题
log打印格式如下
01-06 09:56:39.576: E/TimeResultAdapter(15935): startGame-->
01-06 09:56:39.576: E/TimeResultAdapter(15935): endGame-->要做特殊处理的文字xxxxxxx
直接吧所有文字都做特殊处理了,不知道怎么解决

解决方案

解析在Android中为TextView增加自定义HTML标签的实现方法

解决方案二:

解析在Android中为TextView增加自定义HTML标签的实现方法 不知道

时间: 2024-12-23 18:58:37

android-Android 自定义html标签问题的相关文章

Android中使用include标签和merge标签重复使用布局_Android

尽管Android提供了各种组件来实现小而可复用的交互元素,你也可能因为布局需要复用一个大组件.为了高效复用完整布局,你可以使用<include/>和<merge/>标签嵌入另一个布局到当前布局.所以当你通过写一个自定义视图创建独立UI组件,你可以放到一个布局文件里,这样更容易复用. 复用布局因为其允许你创建可复用的复杂布局而显得非常强大.如,一个 是/否 按钮面板,或带描述文本的自定义进度条.这同样意味着,应用里多个布局里共同的元素可以被提取出来,独立管理,然后插入到每个布局里.

Android动态自定义圆形进度条

效果图: A.绘制圆环,圆弧,文本 //1.画圆环 //原点坐标 float circleX = width / 2; float circleY = width / 2; //半径 float radius = width / 2 - roundWidth / 2; //设置画笔的属性 paint.setColor(roundColor); paint.setStrokeWidth(roundWidth); paint.setStyle(Paint.Style.STROKE); canvas.

Android编程自定义进度条颜色的方法详解

本文实例讲述了Android编程自定义进度条颜色的方法.分享给大家供大家参考,具体如下: 先看效果图: 老是提些各种需求问题,我觉得系统默认的颜色挺好的,但是Pk不过,谁叫我们不是需求人员呢,改吧! 这个没法了只能看源码了,还好下载了源码, sources\base\core\res\res\ 下应有尽有,修改进度条颜色只能找progress ,因为是改变样式,首先找styles.xml 找到xml后,进去找到: <style name="Widget.ProgressBar"&

Android Shape自定义纯色圆角按钮

在Android开发中,为响应美化应用中控件的效果,使用Shape定义图形效果,可以解决图片过多的问题. 首先看一下效果图: 在res-->>drawable下,新建New-->>Others-->>Android  XML  File中 整个页面布局为: [html] view plaincopy <?xml version="1.0" encoding="utf-8"?>   <RelativeLayout 

Android实现自定义带文字和图片Button的方法

  本文实例讲述了Android实现自定义带文字和图片Button的方法.分享给大家供大家参考.具体分析如下: 在Android开发中经常会需要用到带文字和图片的button,下面来讲解一下常用的实现办法. 一.用系统自带的Button实现 最简单的一种办法就是利用系统自带的Button来实现,这种方式代码量最小.在Button的属性中有一个是drawableLeft,这个属性可以把图片设置在文字的左边,但是这种方式必须让icon的背景色是透明的,如果icon的背景色不是透明的话,会导致点击按钮

最近的时间间隔-Android闹钟 自定义重复周期 怎样计算当前时间与自定义周期的最近的那一天的时间间隔

问题描述 Android闹钟 自定义重复周期 怎样计算当前时间与自定义周期的最近的那一天的时间间隔 如果重复周期是 "只有一次" 或者 "每天",算法很好写,只要计算 当前时间 与 给定时间 的时间差就可以,如果 当前时间 < 给定时间,加上一天就ok! 现在问题是:假设 我 自定义了一个重复周期,设定 每周三,每周五7:30 AM的闹铃. 那么如果今天是在周三设定的时间之前,那么要计算与周三的时间差. 如果是周三设定的时间之后,周五设定的时间之前,那么要计算

Android实现自定义轮播图片控件详解_Android

首先上效果图 实现原理 要完成一个轮播图片,首先想到的应该是使用ViewPager来实现.ViewPager已经有了滑动的功能,我们只要让它自己滚动.再加上下方的小圆点就行了.所以我们本次的自定义控件就是由ViewPager和LinearLayout叠加起来组成的. 一.创建一个自定义的ViewPager 先上完整的代码 package com.kcode.autoscrollviewpager.view; import android.content.Context; import andro

Android编程自定义title bar(标题栏)示例_Android

本文实例讲述了Android编程自定义title bar(标题栏)的方法.分享给大家供大家参考,具体如下: package com.test; import android.app.Activity; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.drawable.Drawable; import andr

Android中自定义PopupWindow实现弹出框并带有动画效果_Android

使用PopupWindow来实现弹出框,并且带有动画效果 首先自定义PopupWindow public class LostPopupWindow extends PopupWindow { public Lost lost; public void onLost(Lost lost){ this.lost = lost; } private View conentView; public View getConentView() { return conentView; } public L

Android实现自定义华丽的水波纹效果_Android

先来看看效果 实现效果 模拟水波纹的效果:点击屏幕就有圆环出现,半径从小到大,透明度从大到小(0为透明) 实现思路       1.自定义类继承View.       2.定义每个圆环的实体类 Wave,并初始化绘制圆环的画笔的数据.       3.重写onTouchEvent方法,down时,获得坐标点,做为圆环圆心.       4.发送handler信息,对数据进行修改,刷新页面.       5.重写onDraw方法,绘制一个圆环. 1. 自定义类继承View 新建WaterWaveV